Nghiên Cứu Phát Triển Thuật Toán Metaheuristic Giải Bài Toán Cây Steiner Nhỏ Nhất

Chuyên khảo toán học phân tích Nghiên cứu phát triển thuật toán metaheuristic giải bài toán cây steiner nhỏ nhất định hướng ứng, đánh giá các khía cạnh quan trọng, đề xuất hướng

Chuyên ngành

Hệ thống thông tin

Người đăng

Ẩn danh

Thể loại

luận án tiến sĩ

2023

130
2
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI CAM ĐOAN

LỜI CẢM ƠN

MỤC LỤC

DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT

DANH MỤC CÁC KÝ HIỆU

DANH MỤC CÁC BẢNG

DANH MỤC CÁC HÌNH VẼ

MỞ ĐẦU

0.1. Tính cấp thiết của đề tài

0.2. Đối tượng và phạm vi nghiên cứu

0.3. Mục tiêu nghiên cứu

0.4. Phương pháp nghiên cứu

0.5. Nội dung nghiên cứu

0.6. Những đóng góp chính của luận án

0.7. Ý nghĩa khoa học và thực tiễn

0.8. Bố cục luận án

1. CHƯƠNG 1: TỔNG QUAN VỀ BÀI TOÁN CÂY STEINER NHỎ NHẤT VÀ ĐỊNH HƯỚNG ỨNG DỤNG CHO THIẾT KẾ HỆ THỐNG MẠNG

1.1. Một số định nghĩa

1.2. Một số dạng của bài toán Cây Steiner nhỏ nhất

1.3. Một số hướng tiếp cận giải bài toán Cây Steiner nhỏ nhất

1.4. TIẾP CẬN THUẬT TOÁN METAHEURISTIC GIẢI BÀI TOÁN CÂY STEINER NHỎ NHẤT

1.4.1. Thuật toán heuristic

1.4.2. Thuật toán metaheuristic

1.4.2.1. Tính tăng cường và tính đa dạng
1.4.2.2. Tiêu chí đánh giá chất lượng thuật toán metaheuristic

1.4.3. Sơ đồ chung của thuật toán metaheuristic

1.4.4. Phân tích các thành phần của một thuật toán metaheuristic

1.4.5. Thuật toán Local Search

1.4.6. Thuật toán Hill Climbing Search

1.4.7. Thuật toán tìm kiếm lân cận biến đổi

1.4.8. Thuật toán Bees cơ bản

1.5. KHẢO SÁT MỘT SỐ THUẬT TOÁN TIÊU BIỂU GIẢI BÀI TOÁN CÂY STEINER NHỎ NHẤT

1.6. ĐỊNH HƯỚNG ỨNG DỤNG BÀI TOÁN CÂY STEINER NHỎ NHẤT CHO THIẾT KẾ HỆ THỐNG MẠNG

1.6.1. Giới thiệu bài toán quy hoạch mạng

1.6.2. Ứng dụng các thuật toán tìm Cây Steiner nhỏ nhất trong thiết kế mạng

1.7. LỰA CHỌN DỮ LIỆU THỰC NGHIỆM

1.8. KẾT LUẬN CHƯƠNG 1

2. CHƯƠNG 2: ĐỀ XUẤT THUẬT TOÁN HEURISTIC GIẢI BÀI TOÁN CÂY STEINER NHỎ NHẤT

2.1. GIỚI THIỆU HƯỚNG TIẾP CẬN HEURISTIC GIẢI BÀI TOÁN SMT

2.2. THUẬT TOÁN MST-STEINER

2.3. THUẬT TOÁN SPT-STEINER

2.4. THUẬT TOÁN PD-STEINER

2.5. THỰC NGHIỆM VÀ ĐÁNH GIÁ

2.5.1. Môi trường thực nghiệm

2.5.2. Kết quả thực nghiệm

2.5.3. Đánh giá kết quả thực nghiệm

2.6. CẢI TIẾN THUẬT TOÁN HEURISTIC GIẢI BÀI TOÁN SMT TRONG TRƯỜNG HỢP ĐỒ THỊ THƯA KÍCH THƯỚC LỚN

2.6.1. Thuật toán i-SPT-Steiner

2.6.2. Thuật toán i-PD-Steiner

2.7. THỰC NGHIỆM VÀ ĐÁNH GIÁ

2.7.1. Dữ liệu thực nghiệm

2.7.2. Môi trường thực nghiệm

2.7.3. Kết quả thực nghiệm

2.7.4. Đánh giá kết quả thực nghiệm

2.8. ĐÁNH GIÁ CÁC THUẬT TOÁN THÔNG QUA ĐỘ PHỨC TẠP

2.9. KẾT LUẬN CHƯƠNG 2

3. CHƯƠNG 3: ĐỀ XUẤT THUẬT TOÁN METAHEURISTIC GIẢI BÀI TOÁN CÂY STEINER NHỎ NHẤT

3.1. GIỚI THIỆU HƯỚNG TIẾP CẬN METAHEURISTIC GIẢI BÀI TOÁN SMT

3.2. KHỞI TẠO LỜI GIẢI BAN ĐẦU

3.2.1. Khởi tạo Cây Steiner theo một heuristic

3.2.2. Khởi tạo Cây Steiner ngẫu nhiên

3.2.3. Khởi tạo Cây Steiner dựa vào xác suất

3.3. CÁC CHIẾN LƯỢC TÌM KIẾM CÂY STEINER LÂN CẬN

3.3.1. Định nghĩa Cây Steiner lân cận

3.3.2. Chiến lược chèn cạnh - xóa cạnh

3.3.3. Chiến lược tìm lân cận tốt hơn

3.3.4. Chiến lược tìm lân cận ngẫu nhiên

3.3.5. Chiến lược tìm lân cận Node-base

3.3.6. Chiến lược tìm lân cận Path-based

3.3.7. Chiến lược tìm kiếm lân cận tham lam

3.3.8. Chiến lược tìm kiếm lân cận có xác suất

3.4. THUẬT TOÁN BEES GIẢI BÀI TOÁN CÂY STEINER NHỎ NHẤT

3.4.1. Điều kiện dừng của thuật toán Bees-Steiner

3.4.2. Phân nhóm các cá thể

3.4.3. Sơ đồ Thuật toán Bees-Steiner

3.5. THUẬT TOÁN TÌM KIẾM LÂN CẬN BIẾN ĐỔI GIẢI BÀI TOÁN CÂY STEINER NHỎ NHẤT

3.6. THUẬT TOÁN HILL CLIMBING SEARCH GIẢI BÀI TOÁN CÂY STEINER NHỎ NHẤT

3.6.1. Ý tưởng thuật toán

3.6.2. Thuật toán HCSMT

3.7. THỰC NGHIỆM VÀ ĐÁNH GIÁ CÁC THUẬT TOÁN METAHEURISTIC GIẢI BÀI TOÁN CÂY STEINER NHỎ NHẤT

3.7.1. Thuật toán Bees-Steiner

3.7.2. Thuật toán tìm kiếm lân cận biến đổi

3.7.3. Thuật toán Hill Climbing Search

3.8. ĐÁNH GIÁ CÁC THUẬT TOÁN THÔNG QUA ĐỘ PHỨC TẠP

3.9. KẾT LUẬN CHƯƠNG 3

Các đóng góp chính của luận án

Những nội dung nghiên cứu tiếp theo

CÁC CÔNG TRÌNH KHOA HỌC ĐÃ CÔNG BỐ

TÀI LIỆU THAM KHẢO

HỆ THỐNG DỮ LIỆU CHUẨN

HỆ THỐNG DỮ LIỆU MỞ RỘNG

Tóm tắt

I. Tổng Quan Về Bài Toán Cây Steiner Nhỏ Nhất Giới Thiệu

Bài toán Cây Steiner Nhỏ Nhất (SMT) là một trong những bài toán quan trọng nhất trong thiết kế mạng truyền thông. Mạng truyền thông được mô hình hóa bằng đồ thị vô hướng, liên thông và có trọng số. Bài toán SMT là bài toán tối ưu tổ hợp, được quan tâm nghiên cứu từ những năm 70 của thế kỷ trước để áp dụng cho thiết kế hệ thống mạng và nhiều ứng dụng quan trọng khác trong khoa học và kỹ thuật. Phần lớn các bài toán tối ưu là bài toán thuộc lớp NP-hard, không thể giải trong thời gian đa thức. Chỉ với bài toán quy mô nhỏ thì có thể giải bằng các phương pháp toán chính xác. Các bài toán khác được giải quyết bằng phương pháp xấp xỉ để tạo ra một giải pháp đủ tốt trong một thời gian hợp lý, đó là phương pháp heuristicmetaheuristic. Ứng dụng bài toán Cây Steiner trong khoa học kỹ thuật nói chung đã được nghiên cứu và công bố trong nhiều công trình. Tuy nhiên, do bản chất đây là bài toán tối ưu thuộc lớp NP-hard nên cho đến nay, bài toán vẫn tiếp tục được nghiên cứu nhằm tìm lời giải tối ưu hơn cho các ứng dụng thực tế, đặc biệt là ứng dụng trong thiết kế hệ thống mạng.

1.1. Định Nghĩa Bài Toán Cây Steiner Nhỏ Nhất SMT

Mô hình toán học của bài toán Cây Steiner Nhỏ Nhất có thể phát biểu như sau: Cho G = (V(G), E(G)) là một đơn đồ thị vô hướng liên thông, có trọng số không âm trên cạnh, trong đó V(G) là tập gồm n đỉnh, E(G) là tập gồm m cạnh, w(e) là trọng số của cạnh e với e  E(G). Cho L là tập con các đỉnh của V(G), cây T đi qua tất cả các đỉnh trong L được gọi là Cây Steiner của L. Chi phí của cây T, ký hiệu là C(T), là tổng trọng số của các cạnh thuộc cây T. Bài toán tìm Cây Steiner có chi phí nhỏ nhất được gọi là bài toán Cây Steiner Nhỏ Nhất. Trong trường hợp tổng quát, bài toán SMT đã được chứng minh thuộc lớp bài toán NP-hard.

1.2. Ứng Dụng Thực Tế Của Bài Toán Cây Steiner Nhỏ Nhất

Bài toán SMT có nhiều ứng dụng quan trọng trong một số lĩnh vực khoa học và kỹ thuật, cụ thể như: Bài toán thiết kế mạng truyền thông, bài toán thiết kế vi mạch cỡ cực lớn VLSI (Very large scale integrated), tin sinh học, các bài toán liên quan đến hệ thống mạng với chi phí nhỏ nhất. Bài toán SMT vẫn thu hút được sự nghiên cứu của nhiều nhà khoa học trong hàng chục năm qua. Hiện nay, đã có hàng loạt thuật toán giải bài toán SMT được đề xuất và có thể chia chúng thành các hướng tiếp cận sau: Các thuật toán rút gọn đồ thị, các thuật toán cận tỉ lệ, các thuật toán tìm lời giải đúng, các thuật toán heuristicmetaheuristic.

II. Thách Thức Giải Bài Toán Cây Steiner Nhỏ Nhất NP khó

Bài toán Cây Steiner Nhỏ Nhất thuộc lớp NP-khó, việc tìm kiếm lời giải tối ưu trong thời gian đa thức là bất khả thi đối với các bài toán có kích thước lớn. Điều này đặt ra thách thức lớn trong việc phát triển các thuật toán hiệu quả để giải quyết bài toán này trong thực tế. Các phương pháp tiếp cận truyền thống thường gặp khó khăn trong việc tìm kiếm lời giải chấp nhận được trong thời gian hợp lý. Do đó, việc nghiên cứu và phát triển các thuật toán metaheuristic trở nên vô cùng quan trọng để vượt qua những hạn chế này.

2.1. Độ Phức Tạp Tính Toán Của Bài Toán Cây Steiner

Do tính chất NP-khó của bài toán, độ phức tạp tính toán tăng lên đáng kể khi kích thước bài toán tăng. Các thuật toán tìm kiếm vét cạn không khả thi đối với các bài toán có số lượng đỉnh và cạnh lớn. Việc tìm kiếm lời giải tối ưu đòi hỏi thời gian tính toán lớn, gây khó khăn trong việc ứng dụng vào thực tế.

2.2. Hạn Chế Của Các Thuật Toán Tìm Lời Giải Chính Xác

Các thuật toán tìm lời giải chính xác, như thuật toán nhánh cận, có thể tìm được lời giải tối ưu, nhưng chỉ hiệu quả với các bài toán có kích thước nhỏ. Khi kích thước bài toán tăng lên, thời gian tính toán tăng lên theo cấp số mũ, khiến các thuật toán này trở nên không thực tế.

2.3. Yêu Cầu Về Chất Lượng Lời Giải Trong Thực Tế

Trong nhiều ứng dụng thực tế, việc tìm kiếm lời giải gần tối ưu trong thời gian ngắn quan trọng hơn việc tìm kiếm lời giải tối ưu tuyệt đối. Các thuật toán metaheuristic cung cấp một sự cân bằng giữa chất lượng lời giải và thời gian tính toán, làm cho chúng trở thành lựa chọn phù hợp cho nhiều bài toán thực tế.

III. Thuật Toán Heuristic Mới Giải Bài Toán Cây Steiner SMT

Luận án đề xuất hai thuật toán heuristic mới: SPT-Steiner và PD-Steiner để giải bài toán SMT. Các thuật toán này được cài đặt thực nghiệm trên 98 bộ dữ liệu (gồm có 78 bộ dữ liệu là các đồ thị thưa trong hệ thống dữ liệu thực nghiệm chuẩn và 20 bộ dữ liệu mở rộng là các đồ thị thưa kích thước lớn lên đến 10000 đỉnh - steinf). Từ kết quả thực nghiệm, luận án tiến hành so sánh, đánh giá chi tiết hiệu quả của hai thuật toán heuristic đề xuất mới với thuật toán heuristic MST-Steiner đã được công bố trước đó. Hai thuật toán đề xuất bởi luận án cho chất lượng lời giải tốt hơn thuật toán MST-Steiner trên một số bộ dữ liệu. Thời gian chạy của các thuật toán SPT-Steiner và PD-Steiner chậm hơn so với thuật toán MST-Steiner.

3.1. Thuật Toán SPT Steiner Dựa Trên Cây Đường Đi Ngắn Nhất

Thuật toán SPT-Steiner dựa trên ý tưởng tìm cây đường đi ngắn nhất. Thuật toán này xây dựng cây Steiner bằng cách kết nối các đỉnh terminal thông qua các đường đi ngắn nhất giữa chúng. Quá trình này lặp lại cho đến khi tất cả các đỉnh terminal được kết nối vào một cây duy nhất. Sau đó, các cạnh dư thừa được loại bỏ để tạo ra cây Steiner cuối cùng.

3.2. Thuật Toán PD Steiner Kết Hợp Prim và Dijkstra

Thuật toán PD-Steiner là sự kết hợp ý tưởng chính của thuật toán Prim và Dijkstra. Thuật toán này bắt đầu từ một đỉnh terminal ngẫu nhiên và mở rộng cây Steiner bằng cách thêm các đỉnh và cạnh sao cho tổng chi phí là nhỏ nhất. Thuật toán sử dụng thuật toán Dijkstra để tìm đường đi ngắn nhất từ cây hiện tại đến các đỉnh terminal chưa được kết nối.

3.3. So Sánh SPT Steiner và PD Steiner với MST Steiner

Kết quả thực nghiệm cho thấy các thuật toán SPT-Steiner và PD-Steiner cho chất lượng lời giải tốt hơn thuật toán MST-Steiner trên một số bộ dữ liệu. Tuy nhiên, thời gian chạy của các thuật toán SPT-Steiner và PD-Steiner chậm hơn so với thuật toán MST-Steiner. Điều này cho thấy sự đánh đổi giữa chất lượng lời giải và thời gian tính toán.

IV. Cải Tiến Heuristic Giải Bài Toán SMT Đồ Thị Thưa Lớn

Luận án đề xuất hai thuật toán heuristic cải tiến: i-SPT-Steiner và i-PD-Steiner giải bài toán SMT trong trường hợp đồ thị thưa kích thước lớn. Hai thuật toán heuristic cải tiến i-SPT-Steiner và i-PD-Steiner được cài đặt thực nghiệm và so sánh, đánh giá tính hiệu quả trên 80 bộ dữ liệu là các đồ thị thưa kích thước lớn lên đến 100000 đỉnh. Hai thuật toán heuristic cải tiến cho chất lượng lời giải tốt hơn hoặc tương đương thuật toán MST-Steiner trên một số bộ dữ liệu. Thời gian chạy của thuật toán i-PD-Steiner nhanh hơn so với thuật toán MST-Steiner và thuật toán i-SPT- Steiner. Thời gian chạy của thuật toán i-SPT-Steiner chậm hơn so với thuật toán MST-Steiner và thuật toán i-PD-Steiner.

4.1. Thuật Toán i SPT Steiner Cải Tiến SPT Steiner

Thuật toán i-SPT-Steiner là phiên bản cải tiến của thuật toán SPT-Steiner. Cải tiến chính nằm ở việc sử dụng thuật toán Dial (một biến thể của thuật toán Dijkstra) để tìm đường đi ngắn nhất. Thuật toán Dial hiệu quả hơn thuật toán Dijkstra trong trường hợp đồ thị thưa, giúp giảm thời gian tính toán.

4.2. Thuật Toán i PD Steiner Cải Tiến PD Steiner

Thuật toán i-PD-Steiner là phiên bản cải tiến của thuật toán PD-Steiner. Tương tự như i-SPT-Steiner, i-PD-Steiner sử dụng thuật toán Dial thay vì Dijkstra để tìm đường đi ngắn nhất. Điều này giúp cải thiện hiệu suất của thuật toán trên các đồ thị thưa kích thước lớn.

4.3. Đánh Giá Hiệu Quả Của Các Thuật Toán Cải Tiến

Kết quả thực nghiệm cho thấy các thuật toán i-SPT-Steiner và i-PD-Steiner hiệu quả hơn trong việc giải bài toán SMT trên các đồ thị thưa kích thước lớn. Thuật toán i-PD-Steiner có thời gian chạy nhanh hơn so với i-SPT-Steiner và MST-Steiner, trong khi vẫn duy trì chất lượng lời giải tốt.

V. Thuật Toán Metaheuristic Mới Giải Bài Toán Steiner SMT

Luận án đề xuất mới ba thuật toán metaheuristic dạng cá thể, quần thể giải bài toán SMT đó là: thuật toán Bees-Steiner, thuật toán tìm kiếm lân cận biến đổi VNS và thuật toán tìm kiếm leo đồi Hill climbing search (HCSMT). Ngoài ra, luận án cũng đề xuất 2 chiến lược tìm kiếm lân cận: Tham lam và có xác suất; đồng thời sử dụng chúng trong lược đồ thuật toán tìm kiếm lân cận biến đổi, nhằm nâng cao hơn nữa chất lượng cho các thuật toán metaheuristic.

5.1. Thuật Toán Bees Steiner Dựa Trên Bầy Ong

Thuật toán Bees-Steiner là một thuật toán metaheuristic dựa trên hành vi tìm kiếm thức ăn của bầy ong. Thuật toán này sử dụng một quần thể các con ong để khám phá không gian tìm kiếm và tìm ra lời giải tốt nhất cho bài toán SMT. Các con ong được chia thành các nhóm khác nhau, mỗi nhóm chịu trách nhiệm khám phá một vùng khác nhau của không gian tìm kiếm.

5.2. Thuật Toán Tìm Kiếm Lân Cận Biến Đổi VNS

Thuật toán VNS là một thuật toán metaheuristic dựa trên ý tưởng thay đổi cấu trúc lân cận trong quá trình tìm kiếm. Thuật toán này sử dụng một tập hợp các cấu trúc lân cận khác nhau và chuyển đổi giữa chúng để khám phá không gian tìm kiếm một cách hiệu quả hơn. Luận án đề xuất hai chiến lược tìm kiếm lân cận: Tham lam và có xác suất, để sử dụng trong thuật toán VNS.

5.3. Thuật Toán Hill Climbing Search HCSMT

Thuật toán HCSMT là một thuật toán metaheuristic đơn giản dựa trên ý tưởng leo đồi. Thuật toán này bắt đầu từ một lời giải ban đầu và liên tục cải thiện nó bằng cách di chuyển đến các lời giải lân cận tốt hơn. Thuật toán dừng lại khi không còn lời giải lân cận nào tốt hơn lời giải hiện tại.

VI. Đánh Giá Thuật Toán Metaheuristic Giải Bài Toán SMT

Các thuật toán metaheuristic đề xuất mới này được cài đặt thực nghiệm trên hệ thống dữ liệu thực nghiệm chuẩn và so sánh hiệu quả với các thuật toán metaheuristic khác hiện biết. Kết quả so sánh cho thấy các thuật toán metaheuristic đề xuất mới cho chất lượng lời giải tốt hơn hoặc bằng các thuật toán metaheuristic công bố trước đó trên một số bộ dữ liệu. Chất lượng của các thuật toán metaheuristic phụ thuộc chủ yếu vào các chiến lược tìm kiếm lân cận.

6.1. So Sánh Với Các Thuật Toán Metaheuristic Khác

Kết quả thực nghiệm cho thấy các thuật toán Bees-Steiner, VNS và HCSMT có thể cạnh tranh với các thuật toán metaheuristic khác trong việc giải bài toán SMT. Trong một số trường hợp, các thuật toán đề xuất mới cho chất lượng lời giải tốt hơn hoặc tương đương với các thuật toán đã được công bố trước đó.

6.2. Ảnh Hưởng Của Chiến Lược Tìm Kiếm Lân Cận

Chiến lược tìm kiếm lân cận đóng vai trò quan trọng trong hiệu suất của các thuật toán metaheuristic. Các chiến lược tìm kiếm lân cận hiệu quả có thể giúp thuật toán khám phá không gian tìm kiếm một cách hiệu quả hơn và tìm ra lời giải tốt hơn.

6.3. Ứng Dụng Thực Tế Của Các Thuật Toán Metaheuristic

Các thuật toán metaheuristic có thể được áp dụng để giải quyết nhiều bài toán thực tế liên quan đến Cây Steiner Nhỏ Nhất, chẳng hạn như thiết kế mạng truyền thông, thiết kế vi mạch và tối ưu hóa logistics. Các thuật toán này cung cấp một phương pháp hiệu quả để tìm kiếm lời giải gần tối ưu trong thời gian hợp lý.

06/06/2025
Nghiên cứu phát triển thuật toán metaheuristic giải bài toán cây steiner nhỏ nhất định hướng ứng dụng cho thiết kế hệ thống mạng

Trích đoạn nội dung tài liệu

Chương 1: Trình bày tổng quan về cơ sở lý thuyết bài toán Cây Steiner nhỏ nhất với các nội dung: Một số định nghĩa, định lý cơ bản liên quan; các dạng của bài toán Cây Steiner nhỏ nhất; sơ lược một số hướng tiếp cận. Tiếp theo, khảo sát một số thuật toán metaheuristic giải bài toán Cây Steiner nhỏ nhất, cụ thể như: Giới thiệu sơ đồ một số thuật toán metaheuristic thường gặp như: thuật toán local search, thuật toán leo đồi, thuật toán tìm kiếm lân cận biến đổi, thuật toán bầy ong; các tiêu chí đánh giá chất lượng thuật toán metaheuristic; khảo sát kết quả một số thuật toán heuristic, metaheuristic hiện biết giải bài toán Cây Steiner nhỏ nhất; định hướng ứng dụng bài toán Cây Steiner nhỏ nhất cho thiết kế hệ thống mạng và cuối cùng là giới thiệu hệ thống dữ liệu thực nghiệm chuẩn và mở rộng cho bài toán. - Chương 2: Đề xuất 2 thuật toán heuristic mới SPT-Steiner, PD-Steiner và 2 thuật toán heuristic cải tiến i-SPT-Steiner, i-PD-Steiner giải bài toán Cây Steiner nhỏ nhất. Thuật toán heuristic SPT-Steiner dựa trên ý tưởng cơ bản của bài toán tìm cây đường đi ngắn nhất và thuật toán heuristic PD-Steiner là sự kết hợp ý tưởng chính của thuật toán Prim và Dijkstra.

Hai thuật toán heuristic cải tiến i-SPT-Steiner 6 và i-PD-Steiner dựa trên ý tưởng thay thế thuật toán Dijkstra bằng thuật toán Dial (một biến thể của thuật toán Dijkstra) trong việc tìm đường đi ngắn nhất. Các thuật toán đề xuất đã được cài đặt thực nghiệm trên hệ thống dữ liệu thực nghiệm chuẩn và mở rộng là các đồ thị thưa có kích thước lên đến 100000 đỉnh. Kết quả thực nghiệm cho thấy, thuật toán đề xuất hiệu quả hơn một số thuật toán giải gần đúng đã được công bố trên một số bộ dữ liệu, nhất là đối với các đồ thị thưa có kích thước lớn. - Chương 3: Đề xuất 3 thuật toán metaheuristic giải bài toán Cây Steiner nhỏ nhất; các thuật toán này lần lượt dựa trên khung thuật toán metaheuristic gồm: Thuật toán Bees, Hill climbing search và Variable neighborhood search.

Luận án cũng đề xuất một số chiến lược tìm kiếm lân cận cho bài toán Cây Steiner nhỏ nhất. Các thuật toán đề xuất này đã được cài đặt thực nghiệm trên hệ thống dữ liệu thực nghiệm chuẩn; kết quả thực nghiệm cho thấy thuật toán đề xuất cho lời giải với chất lượng tốt hơn một số thuật toán heuristic và metaheuristic hiện biết trên một số bộ dữ liệu. Luận án cũng phân tích ưu nhược điểm của từng thuật toán cụ thể và qua đó định hướng phạm vi áp dụng vào thực tế cho từng thuật toán đề xuất. Trong phần Kết luận, luận án trình bày những kết quả đạt được và định hướng phát triển cho nghiên cứu trong tương lai khi áp dụng kết quả luận án vào thực tiễn.

TỔNG QUAN VỀ BÀI TOÁN CÂY STEINER NHỎ NHẤT VÀ ĐỊNH HƯỚNG ỨNG DỤNG CHO THIẾT KẾ HỆ THỐNG MẠNG Chương này trình bày tổng quan những vấn đề nghiên cứu của luận án. Thứ nhất tổng quan về bài toán Cây Steiner nhỏ nhất. Thứ hai tiếp cận thuật toán metaheuristic giải bài toán Cây Steiner nhỏ nhất. Thứ ba khảo sát một số thuật toán tiêu biểu giải bài toán Cây Steiner nhỏ nhất.

Thứ tư định hướng ứng dụng bài toán Cây Steiner nhỏ nhất cho thiết kế hệ thống mạng và cuối cùng là đề xuất lựa chọn dữ liệu thực nghiệm. Từ kết quả nghiên cứu tổng quan và khảo sát phân tích, đánh giá một số thuật toán tiêu biểu giải bài toán Cây Steiner nhỏ nhất, cho thấy hướng tiếp cận bằng thuật toán metaheuristic là rất khả thi và hiệu quả. Chương này được tổng hợp từ các công trình [CT1], [CT6] và [CT8] trong danh mục các công trình nghiên cứu của tác giả. Một số định nghĩa Định nghĩa 1.

Cây Steiner Cho G = (V(G), E(G)) là một đơn đồ thị vô hướng liên thông, có trọng số không âm trên cạnh, trong đó V(G) là tập gồm n đỉnh, E(G) là tập gồm m cạnh, w(e) là trọng số của cạnh e với e  E(G). Cho L là tập con các đỉnh của V(G), cây T đi qua tất cả các đỉnh trong L được gọi là Cây Steiner ứng với tập L trên đồ thị G. Tập L được gọi là tập terminal, các đỉnh thuộc tập L được gọi là đỉnh terminal. Đỉnh thuộc cây T mà không thuộc tập L được gọi là đỉnh Steiner [14].

Chi phí Cây Steiner 8 Cho T = (V(T), E(T)) là một Cây Steiner của đồ thị G. Chi phí của cây T, ký hiệu là C(T), là tổng trọng số của các cạnh thuộc cây T, tức là C(T) = eE(T) w(e) [14]. Cây Steiner nhỏ nhất Cho đồ thị G được mô tả như trên, bài toán tìm Cây Steiner có chi phí nhỏ nhất được gọi là bài toán Cây Steiner nhỏ nhất (Steiner minimal trees problem – SMT); hoặc được gọi ngắn gọn là bài toán Cây Steiner (Steiner trees problem) [14][16]. SMT là bài toán lý thuyết đồ thị thuộc dạng tối ưu tổ hợp [5][3].

Trong trường hợp tổng quát, SMT đã được chứng minh thuộc lớp NP-hard [14][52]. Khác với bài toán cây khung nhỏ nhất (Minimum spanning tree problem); Cây Steiner chỉ cần đi qua tất cả các đỉnh thuộc tập terminal L và có thể thêm một số đỉnh khác nữa thuộc tập V(G) chứ không nhất thiết phải đi qua tất cả các đỉnh của đồ thị G [14]. Định lý về số đỉnh Steiner Cho đồ thị G và tập terminal L, Cây Steiner T của L có p đỉnh thì số đỉnh Steiner của T không vượt quá p - 2 [1]. Cạnh cầu Steiner Cho đồ thị G và tập terminal L, cạnh euv được gọi là cạnh cầu Steiner của G nếu khi loại cạnh euv thì tập các đỉnh terminal L không cùng thuộc về một thành phần liên thông [1].

Đồ thị rút gọn Steiner Cho đồ thị G và tập terminal L, G’ được gọi là đồ thị rút gọn Steiner của G nếu số đỉnh và số cạnh của G’ nhỏ hơn hoặc bằng số đỉnh và số cạnh của G và trong G’ tồn tại ít nhất một Cây Steiner nhỏ nhất ứng với tập terminal L của đồ thị G. Để ngắn gọn, trong định nghĩa này từ đồ thị được hiểu là đơn đồ thị, vô hướng, liên thông và có trọng số không âm. Cho một đồ thị G có 9 đỉnh và 10 cạnh như Hình 1.1 và tập terminal L = {2, 8, 9}. Minh họa một đồ thị G vô hướng liên thông có trọng số Khi đó, Cây Steiner nhỏ nhất tìm được ứng với tập terminal L trên đồ thị G là T có V(T) = {2, 3, 4, 6, 8, 9} và E(T) = {(2, 3), (3, 4), (4, 6), (4, 8), (6, 9)} như được minh họa ở Hình 1.2; cây T có tập đỉnh Steiner là {3, 4, 6} và có chi phí là 25.

Cây Steiner nhỏ nhất ứng với tập terminal L của đồ thị G 1. Một số dạng của bài toán Cây Steiner nhỏ nhất Bài toán Cây Steiner nhỏ nhất hiện được nghiên cứu ở các dạng sau đây: - Thứ nhất là bài toán Cây Steiner với khoảng cách Euclide. Trong mặt phẳng tọa độ OXY, cho đồ thị G = (V(G), E(G)) và tập đỉnh L  V. Cần tìm cây đi qua tất 10 cả các đỉnh thuộc tập L và có tổng độ dài là nhỏ nhất, cho phép thêm vào một số điểm phụ (điểm Steiner) được lấy từ các đỉnh thuộc V.

Khoảng cách Euclide giữa hai điểm P1 (x1, y1) và P2 (x2, y2) là độ dài đoạn thẳng nối hai đỉnh P1, P2 [11][16][33][41][63]. - Thứ hai là bài toán Cây Steiner với khoảng cách chữ nhật. Trong mặt phẳng tọa độ OXY cho đồ thị G = (V(G), E(G)) và tập đỉnh L  V. Hãy tìm cây đi qua tất cả các đỉnh thuộc tập L và có tổng độ dài là nhỏ nhất, cho phép thêm vào một số điểm phụ (điểm Steiner) được lấy từ các đỉnh thuộc V.

Khoảng cách chữ nhật (rectilinear distance) giữa hai điểm P1 (x1, y1) và P2 (x2, y2) là d (P1, P2) = |x1  x2| + |y1  y2| [32][35][87]. - Thứ ba là bài toán Cây Steiner với khoảng cách ngẫu nhiên. Khoảng cách giữa các đỉnh là trọng số của các cạnh; và đây là phạm vi nghiên cứu về bài toán Cây Steiner nhỏ nhất của tác giả trong đề tài này. Có hai trường hợp đặc biệt đối với bài toán SMT là giải được trong thời gian đa thức; đó là khi L = V(G) và khi |L| = 2.

Tổng quan các nghiên cứu liên quan đến bài toán Cây Steiner nhỏ nhất Hiện tại, trong nước đã có một số công trình nghiên cứu về bài toán Cây Steiner nhỏ nhất như của tác giả Vũ Đình Hòa [1], Trần Lê Thủy [7],. Trên thế giới đã có nhiều công bố liên quan đến bài toán Cây Steiner nhỏ nhất; trong số đó có luận án của tác giả Martin Zachariasen [53], luận án của tác giả Tobias Polzin [78], luận án của tác giả Pieter Oloff De Wet [61], luận án của tác giả Xinhui Wang [84], luận án của tác giả Jon William Van Laarhoven [46], luận án của tác giả Zhiliu Zhang [87],… 11 Hiện tại, ở Việt Nam chưa có luận án tiến sĩ kỹ thuật chuyên ngành nghiên cứu về bài toán này. Có nhiều hướng tiếp cận giải bài toán Cây Steiner nhỏ nhất như các thuật toán rút gọn đồ thị, các thuật toán tìm lời giải đúng, các thuật toán tìm lời giải gần đúng cận tỉ lệ, các thuật toán heuristic và các thuật toán metaheuristic [8][30][45][51][54] [86],. - Các thuật toán rút gọn đồ thị Một số công trình về rút gọn đồ thị cho bài toán Cây Steiner nghiên cứu các kỹ thuật nhằm giảm thiểu kích thước của đồ thị như công trình của Jeffrey H.Kingston và Nicholas Paul Sheppard [44], công trình của Thorsten Koch và Alexander Martin [77], công trình của C.

Souza [15],… Ý tưởng chung của các thuật toán rút gọn đồ thị là nhằm đến hai mục tiêu: Thứ nhất là gia tăng số lượng các đỉnh thuộc tập terminal; Thứ hai là loại bỏ các đỉnh của đồ thị mà nó chắc chắn không thuộc về Cây Steiner nhỏ nhất cần tìm. Chất lượng các thuật toán giải bài toán SMT phụ thuộc vào độ lớn của hệ số n  |L|; do vậy mục đích của các thuật toán rút gọn đồ thị là làm giảm thiểu tối đa hệ số n  |L|. Các thuật toán rút gọn đồ thị được xem là bước tiền xử lý dữ liệu quan trọng để nâng cao chất lượng lời giải bài toán SMT; và công đoạn này càng cần thiết đối với các thuật toán tìm lời giải đúng như quy hoạch động hoặc nhánh cận.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Tài liệu "Nghiên Cứu Thuật Toán Metaheuristic Giải Bài Toán Cây Steiner Nhỏ Nhất" cung cấp cái nhìn sâu sắc về các thuật toán metaheuristic được áp dụng để giải quyết bài toán cây Steiner nhỏ nhất, một vấn đề quan trọng trong lý thuyết đồ thị và tối ưu hóa. Tài liệu này không chỉ trình bày các phương pháp hiện có mà còn phân tích hiệu quả và ứng dụng thực tiễn của chúng, giúp người đọc hiểu rõ hơn về cách thức tối ưu hóa mạng lưới kết nối.

Để mở rộng kiến thức của bạn về các phương pháp tối ưu hóa khác, bạn có thể tham khảo tài liệu Luận văn thạc sĩ lai ghép nơron hopfield và giải thuật di truyền giải bài toán tối ưu ràng buộc, nơi khám phá sự kết hợp giữa các thuật toán nơron và di truyền trong tối ưu hóa. Ngoài ra, tài liệu Luận văn thạc sĩ khoa học đường đi ngắn nhất trên mặt địa hình và nấm nhầy sẽ giúp bạn hiểu rõ hơn về các thuật toán tìm đường đi ngắn nhất trong các điều kiện địa hình phức tạp. Cuối cùng, tài liệu Luận văn thạc sĩ khoa học máy tính các thuật toán tìm đường đi ngắn nhất với đồ thị có trọng số thay đổi theo thời gian sẽ cung cấp thêm thông tin về các thuật toán thích ứng với sự thay đổi trong trọng số của đồ thị.

Những tài liệu này không chỉ bổ sung cho kiến thức của bạn về thuật toán metaheuristic mà còn mở ra nhiều hướng nghiên cứu và ứng dụng mới trong lĩnh vực tối ưu hóa.