BÁO CÁO MÔN HỌC CÁC KỸ THUẬT TỐI ƯU Tabu Search and Evolutionary Scatter Search for ‘TreeStar’ Network Problems, with Applications to LeasedLine Giảng Viên: PGS.TS. Lê Nhật Thăng Học viên: Tạ Thị Minh Hiển Ngô Trường Giang Mục Lục Các thuật ngữ viết tắt 3 CHƯƠNG I: Heuristic and Adaptive Computation Techniques in Telecommunications: an Introduction 3 1.1. Các vấn đề tối ưu hóa trong viễn thông 3 1.2. Bài toán động và thích ứng. 3 1.3. Các kỹ thuật Heuristic hiện đại 3 1.3.1. Tìm kiếm cục bộ 3 1.3.2 Tìm kiếm dựa trên tập hợp 3 1.4. Kỹ thuật tính toán thích nghi 3 1.4.1. Tính toán hệ thần kinh 3 1.4.2. Logic mờ 3 1.4.3. Lý thuyết trò chơi 3 CHƯƠNG IV: Search and Evolutionary Scatter Search for ‘TreeStar’ Network Problems, with Applications to LeasedLine Network Design 3 4.1. Giới thiệu 3 4.2. Xây dựng toán học 3 4.3. Thuật toán Tabu Search 3 4.3.1. Constructive lân cận 3 4.3.2. Đánh giá di chuyển và sửa lỗi 3 4.3.3. Bộ nhớ Tabu Search 3 4.3.4. Lựa chọn theo xác suất 3 4.3.5. Tăng cường giải pháp phục hồi 3 4.4. Thuật toán Scatter Search 3 4.4.1. Framework của SS 3 4.4.2. Chương trình đa dạng cho vector 10 3 4.4.3. Cập nhật và duy trì các RefSet 3 4.4.4. Lựa chọn các subset của các giải pháp tham khảo 3 4.4.5. Phương pháp kết hợp giải pháp 3 4.4.6. Phương pháp cải thiện 3 4.5. Tính toán kết quả 3 4.5.1. Thiết lập các thông số 3 4.5.2. Số lượng kết quả kiểm thử cho SS 3 4.5.3. Cải thiện tốc độ của SS 3 4.6. Kết Luận 3 Tài liệu tham khảo 3 Các thuật ngữ viết tắt Từ viết tắt Nghĩa tiếng Anh Nghĩa tiếng Việt DDS Digital Data Service Dịch vụ dữ liệu kỹ thuật số LAN Local Area Network Mạng má tính cục bộ FCC Federal Communications Commission Ủy ban Truyền thông liên bang STS Steiner treestar Cây bao trùm Steiner TS Tabu Search Tabu Search SS Scatter Search Tìm kiếm phân tán CHƯƠNG I: Heuristic and Adaptive Computation Techniques in Telecommunications: an Introduction 1.1. Các vấn đề tối ưu hóa trong viễn thông Sự phức tạp và kích thước của các mạng viễn thông hiện đại cung cấp cho chúng ta nhiều thách thức và cơ hội. Trong cuốn sách này, những thách thức mà chúng tôi tập trung vào là những liên quan đến việc tối ưu hóa. Điều này chỉ đơn giản đề cập tới những trường hợp mà trong đó chúng ta đang hướng tới tìm một cách tiếp cận phương án tốt nhất giữa nhiều phương án có thể có để giải quyết bài toán. Ví dụ, có một số lượng lớn cách để thiết kế các cấu trúc liên kết một mạng dữ liệu riêng cho một công ty lớn. Làm thế nào chúng ta có thể tìm thấy một thiết kế đặc biệt tốt trong tất cả các khả năng? Ngoài ra, chúng ta có thể thử tìm một cách tốt để gán kênh tần số cho nhiều người sử dụng mạng di động. Có một loạt các khó khăn phức tạp liên quan ở đây, số lượng các phương án có thể đáp ứng các khó khăn vẫn còn quá lớn để chúng tôi hy vọng sẽ kiểm tra lần lượt từng phương án trong số chúng. Vì vậy, một lần nữa, chúng ta cần một số cách để tìm ra giải pháp tốt trong tất cả các khả năng. Những thách thức hiện tại là cơ hội cho sự hợp tác giữa các kỹ sư viễn thông, các nhà nghiên cứu và phát triển trong khoa học máy tính và trí tuệ nhân tạo cộng đồng. Đặc biệt, có một bộ các công nghệ phần mềm mới nổi nhằm tối ưu hóa các vấn đề mà hiện nay đang được được sử dụng trong ngành công nghiệp, nhưng có tiềm năng lớn cho các giải pháp có lợi nhuận và hiệu quả cho nhiều bài toán trong ngành viễn thông. Phần lớn cuốn sách này tập trung vào các kỹ thuật tối ưu hóa, và các công trình
Trang 1BÁO CÁO MÔN HỌC
CÁC KỸ THUẬT TỐI ƯU
Tabu Search and Evolutionary Scatter Search for ‘Tree-Star’ Network Problems, with Applications to Leased-Line
Giảng Viên: PGS.TS Lê Nhật Thăng
Học viên: Tạ Thị Minh Hiển
Ngô Trường Giang
Mục Lục
Các thuật ngữ viết tắt 3
CHƯƠNG I: Heuristic and Adaptive Computation Techniques in Telecommunications: an Introduction 3
1.1 Các vấn đề tối ưu hóa trong viễn thông 3
1.2 Bài toán động và thích ứng 3
1.3 Các kỹ thuật Heuristic hiện đại 3
1.3.1 Tìm kiếm cục bộ 3
1.3.2 Tìm kiếm dựa trên tập hợp 3
1.4 Kỹ thuật tính toán thích nghi 3
1.4.1 Tính toán hệ thần kinh 3
Trang 21.4.2 Logic mờ 3
1.4.3 Lý thuyết trò chơi 3
CHƯƠNG IV: Search and Evolutionary Scatter Search for ‘Tree-Star’ Network Problems, with Applications to Leased-Line Network Design 3
4.1 Giới thiệu 3
4.2 Xây dựng toán học 3
4.3 Thuật toán Tabu Search 3
4.3.1 Constructive lân cận 3
4.3.2 Đánh giá di chuyển và sửa lỗi 3
4.3.3 Bộ nhớ Tabu Search 3
4.3.4 Lựa chọn theo xác suất 3
4.3.5 Tăng cường giải pháp phục hồi 3
4.4 Thuật toán Scatter Search 3
4.4.1 Framework của SS 3
4.4.2 Chương trình đa dạng cho vector 1-0 3
4.4.3 Cập nhật và duy trì các RefSet 3
4.4.4 Lựa chọn các subset của các giải pháp tham khảo 3
4.4.5 Phương pháp kết hợp giải pháp 3
4.4.6 Phương pháp cải thiện 3
4.5 Tính toán kết quả 3
4.5.1 Thiết lập các thông số 3
4.5.2 Số lượng kết quả kiểm thử cho SS 3
4.5.3 Cải thiện tốc độ của SS 3
4.6 Kết Luận 3
Tài liệu tham khảo 3
Trang 3Các thuật ngữ viết tắt
DDS Digital Data Service Dịch vụ dữ liệu kỹ thuật số
Trang 4CHƯƠNG I: Heuristic and Adaptive Computation Techniques in
Telecommunications: an Introduction1.1 Các vấn đề tối ưu hóa trong viễn thông
Sự phức tạp và kích thước của các mạng viễn thông hiện đại cung cấp cho chúng tanhiều thách thức và cơ hội Trong cuốn sách này, những thách thức mà chúng tôi tậptrung vào là những liên quan đến việc tối ưu hóa Điều này chỉ đơn giản đề cập tới nhữngtrường hợp mà trong đó chúng ta đang hướng tới tìm một cách tiếp cận phương án tốtnhất giữa nhiều phương án có thể có để giải quyết bài toán Ví dụ, có một số lượng lớncách để thiết kế các cấu trúc liên kết một mạng dữ liệu riêng cho một công ty lớn Làmthế nào chúng ta có thể tìm thấy một thiết kế đặc biệt tốt trong tất cả các khả năng? Ngoài
ra, chúng ta có thể thử tìm một cách tốt để gán kênh tần số cho nhiều người sử dụngmạng di động Có một loạt các khó khăn phức tạp liên quan ở đây, số lượng các phương
án có thể đáp ứng các khó khăn vẫn còn quá lớn để chúng tôi hy vọng sẽ kiểm tra lần lượttừng phương án trong số chúng Vì vậy, một lần nữa, chúng ta cần một số cách để tìm ragiải pháp tốt trong tất cả các khả năng
Trang 5Những thách thức hiện tại là cơ hội cho sự hợp tác giữa các kỹ sư viễn thông, các nhànghiên cứu và phát triển trong khoa học máy tính và trí tuệ nhân tạo cộng đồng Đặc biệt,
có một bộ các công nghệ phần mềm mới nổi nhằm tối ưu hóa các vấn đề mà hiện nayđang được được sử dụng trong ngành công nghiệp, nhưng có tiềm năng lớn cho các giảipháp có lợi nhuận và hiệu quả cho nhiều bài toán trong ngành viễn thông
Phần lớn cuốn sách này tập trung vào các kỹ thuật tối ưu hóa, và các công trìnhnghiên cứu trong các chương sắp tới trình bày một phần việc áp dụng những kỹ thuật nàycho các bài toán liên quan đến viễn thông Các kỹ thuật sử dụng bao gồm các phươngpháp "tìm kiếm cục bộ “ như mô phỏng (Aarts và Korst, 1989) và tìm kiếm tabu (Glover,1989; 1989a), và các kỹ thuật tìm kiếm 'dựa trên tập hợp' như thuật toán di truyền (HàLan, 1975 ; Goldberg, 1989), chiến lược phát triển (Schwefel, 1981; Back, 1996), lậptrình tiến hóa (Fogel, 1995) và lập trình di truyền (Koza, 1992) Mục 1.3 giới thiệu ngắngọn và cơ bản các kỹ thuật trên, dành cho các kỹ sư viễn thông, quản lý hoặc nghiên cứu,những người hiểu biết quá nhiều về vấn đề này, nhưng chưa biết cách để giải quyếtchúng Chương sau thảo luận về việc sử dụng liên quan đến các bài toán đặc biệt trongviễn thông
1.2 Bài toán động và thích ứng.
Một khía cạnh cơ bản của nhiều vấn đề tối ưu hóa trong viễn thông là một thực tếrằng các giải pháp tối ưu là động Những gì có thể là giải pháp tốt nhất bây giờ có thểkhông phải là giải pháp lý tưởng trong một vài giờ, hoặc thậm chí một vài phút Ví dụ,các nhà cung cấp dịch vụ của một cơ sở dữ liệu phân tán ( như video theo yêu cầu , dịch
vụ web - bộ nhớ đệm, vv) phải cố gắng để đảm bảo chất lượng dịch vụ cho mỗi kháchhàng Để làm điều này liên quan đến việc chuyển hướng cơ sở dữ liệu của khách hàngtruy cập đến các máy chủ khác nhau tại các thời điểm khác nhau ( khách hàng không thểnhận biết) để thực hiện phù hợp cân bằng tải giữa các máy chủ Kỹ thuật tối ưu hóa hiệnđại có thể được sử dụng để phân phối tải trọng phù hợp trên các máy chủ, tuy nhiên giảipháp này trở nên không hợp lệ ngay sau khi có sự thay đổi trung bình trong mô hình truycập cơ sở dữ liệu của khách hàng Một ví dụ khác là định tuyến gói chung trong mộtmạng point -to -point Theo truyền thống, bảng định tuyến tại mỗi node được sử dụng để
Trang 6tìm kiếm ' bước kế tiếp ' tốt nhất cho một gói dựa trên điểm đến cuối cùng của nó Chúng
ta có thể tưởng tượng một kỹ thuật tối ưu hóa áp dụng cho vấn đề này , kỹ thuật này dựavào mô hình tổng thể và xác định các bảng định tuyến thích hợp cho mỗi node , do đó ùntắc chung và sự chậm trễ có thể được giảm thiểu, tức là trong nhiều trường hợp là ' bước
kế tiếp " tốt nhất có thể không tìm được node tiếp theo trên con đường ngắn nhất , vì liênkết này có thể được được sử dụng nhiều rồi Tuy nhiên, đây rõ ràng là một chương trìnhcần được thực hiện lặp đi lặp lại như những biểu đồ thay đổi lưu lượng truy cập
Việc thực hiện lặp đi lặp lại của các kỹ thuật tối ưu hóa là một trong những cách cóthể để tiếp cận các bài toán động, nó thường là một cách khá phù hợp, đặc biệt là khi cácgiải pháp tốt yêu cầu cần thiết phải rất nhanh, vì môi trường thay đổi rất nhanh chóng.Thay vào đó, một phạm vi khác của các kỹ thuật tính toán hiện đại thường thích hợp chocác bài toán như vậy Chúng ta có thể gọi chung lớp này là kỹ thuật "thích ứng", mặc dùviệc sử dụng ở các chương sau trong cuốn sách này thực sự khá đa dạng Đặc biệt,chương sau sẽ sử dụng tính toán thần kinh (neural), logic mờ và lý thuyết trò chơi để giảiquyết tối ưu hóa thích nghi trong môi trường động, trong một số trường hợp kết hợp vớitìm kiếm cụ bộ hoặc dựa vào tập hợp Về cơ bản, một kỹ thuật tối ưu hóa cung cấp mộtcách nhanh chóng và hiệu quả để tìm một giải pháp tốt trong nhiều giải pháp, một kỹthuật thích ứng phải cung cấp một giải pháp tốt gần như là ngay lập tức
Thủ thuật ở đây đó là các phương pháp sử dụng tiến trình “off-line” để học về vấn đềđang giải quyết sao cho khi mà các kết quả tốt và nhanh được yêu cầu thì chúng sẽ đượcchuyển đi Ví dụ, một cách tiếp cận thích hợp cho việc định tuyến gói tin trong các mặtthay đổi trong mô hình giao thông sẽ bao gồm một số liên tục nhưng tôi thiểu hóa xử lý
mà được cập nhật liên tục trong bảng định tuyến tại mỗi node dựa trên thông tin hiện tại
về độ trễ và mức độ giao thông
Trong phần còn lai của chương này chúng ta sẽ giới thiệu ngắn gọn về sự tối ưu và vàcác kỹ thuật thích ứng mà chúng ta đã đề cập ở trên Chi tiết sẽ được nói ở các chươngsau Sau đó chúng ta sẽ nói một chút về ba phần trong cuốn sách này trong các chươngtiếp theo Sau cùng, chúng ta sẽ chỉ ra tại sao những kỹ thuật này là quan trọng trong viễnthông , và chúng sẽ ngày càng phát triển theo thời gian
Trang 71.3 Các kỹ thuật Heuristic hiện đại
Có một loạt các phương pháp nổi tiếng trong hoạt động nghiên cứu, như là : quyhoạch động (DynamicProgramming) , quy hoạch tuyến tính( Integer Programming ).V v đã được sử dụng để giải quyết các lọa vấn đề tối ưu khác nhau Tuy nhiên , một cộngđồng lớn của các nhà khoa học máy tính và các nhà nghiên cứu trí tuệ nhân tạo ngày nayđang dành rất nhiều nỗ lực vào những ý tưởng hiện đại hơn được gọi là “metaheuristics”hay còn gọi là “heuristic” Vấn đề khác nhau cơ bản giữa các phương pháp hiên đại vàphương pháp cổ điển đó là, nó dễ áp dụng hơn Tực là nếu đưa ra một vấn đề thực tế điểnhình và phức tạp thì nó sẽ cần ít công sức để phát triển cách tiếp cận mô hình tôi thép đểgiải quyết vấn đề đó hơn là trình bày vấn đề theo cách quy hoạch tuyến tính có thể ápdụng trên nó
Điều này không nói rằng các phương pháp hiện đại sẽ làm tốt hơn phương pháp cổđiển Trên thực tế, kịch bản thực tế và điển hình khi mà cả hai loại phương pháp được ápdụng đó là :
Một chuyên gia metaheuristics so sánh hại loại kỹ thuật : phương pháp hiện đại làmtốt hơn phương pháp cổ điện
Một chuyên gia nghiên cứu các hoạt động cổ điển so sánh hai loại kỹ thuật : phươngpháp cổ điển vượt trội hơn phương pháp hiện đại
Mặc dù sự quan sát này dựa trên một khía cạnh quan trọng trong việc giải quyết cácvấn đề tối ưu Bạn càng hiểu rõ các kỹ thuật riêng biệt mà bạn đang áp dụng thì bạn càng
có khả sử dụng và khai thác nó để đạt được kết quả tốt hơn
Trong phần này chúng tôi chỉ cung cấp khái quát về một số thuật toán tối ưu hiện đại,
và do đó không cung cấp khá đầy đủ thông tin cho một người đọc để có thể chỉnh chophù hợp với các vấn đề cụ thể Mặc dù chúng tôi không chỉ cho bạn cách để sáng tạo vớichúng, nhưng chúng tôi chỉ ra điểm mấu chốt ở đâu Làm cách nào để áp dụng sáng tạochúng thì phụ thuộc và rất nhiều vấn đề, nhưng chương sau sẽ cung cấp các thông tin chotừng trường hợp cụ thể Những gì sẽ trở nên rõ ràng từ chương này, tuy nhiên, đó lànhững kỹ thuật được đánh giá cao chung trong ứng dụng của chúng Trong thực tế, bất cứ
Trang 8khi nào cũng có một số cách khá sẵn để đánh giá hoặc tính điểm giải pháp ứng cử viêncho vấn đề của bạn, sau đó các kỹ thuật này có thể được áp dụng.
Về bản chất các kỹ thuật này được chia làm 2 nhóm : tìm kiếm cục bộ, tìm kiếm dựatrên dân số Đó sẽ là những thứ sẽ được bàn đến tiếp theo đây
1.3.1 Tìm kiếm cục bộ
Giả sử rằng bạn đang cố gắng để giải quyết một vấn đề P, và bạn có một tập hợp S
là các giải pháp tiềm năng cho vấn đề này Bạn không nhất thiết phải có tập S, vì nó quá
lớn để có thể hiểu rõ toàn bộ Tuy nhiên, bạn có một số cách để tạo ra các giải pháp từ nó
Ví dụ, S có thể là một tập hợp các cấu trúc liên kết cho một mạng, và các giải pháp ứng
cử s, s ', s'',… là các đề cử cấu trúc kết nối cụ thể mà bạn đã đưa ra theo cách nào đó Thêm vào đó, hãy tưởng tượng rằng bạn có một hàm chuẩn hóa f(s) (fitness function) có
chức năng đưa ra kết quả của một giải pháp đề cử Kết quả tốt hơn đồng nghĩa với việc
đó là giải pháp tốt hơn Lấy ví dụ, chúng ta đang cố gắng tìm ra những cấu trúc liên kết
mạng đáng tin cậy nhất, sau đó f (s) có thể tính toán xác suất thất bại của liên kết giữa hai
node đặc biệt quan trọng Trong trường hợp chúng ta muốn sử dụng nghịch đảo của giá
trị này nếu chúng ta thực sự muốn gọi nó là ‘chuẩn hóa’ (fitness) Trong những trường hợp khi mà kết quả thấp hơn, thì tốt hơn và thường thì thích hợp hơn đó là coi f(s) là một
hàm chi phí
Chúng ta còn cần thêm một điều nữa, mà chúng ta gọi là một toán tử lân cận
(neighbourhood operator) Đây là hàm có chức năng lấy ra một giải pháp đề cử s, và tạo
ra một giải pháp đề cử mới s’ - thường chỉ hơi khác một chút so với s Chúng ta sẽ sử dụng thuật ngữ ‘biến cố’ (mutation) để mô tả cho toán tử này Ví dụ, nếu chúng ta biến
đổi một cấu trúc liên kết mạng, kết quả biến đổi có thể bao gồm một liên kết thêm không
có trong cấu trúc liên kết ‘cha mẹ’, hoặc cũng có thể là giống như nhau Ngoài ra, biến cố
có thể loại bỏ, hoặc di chuyển, một liên kết
Bây giờ chúng ta có thể mô tả một cách cơ bản về tìm kiếm cục bộ Trước tiên, hãyxem xét một trong những phương pháp tìm kiếm cục bộ đơn giản nhất, được gọi là
phương pháp leo đồi (hillclimbing), thực hiện theo các bước dưới đây:
Trang 91 Bắt đầu: tạo ra một giải pháp đề cử ban đầu (có thể bằng một cách ngẫu nhiên); gọiđây là giải pháp hiện tại, c Đánh giá nó.
2 Biến đổi c để tạo ra một biến cố m, sau đó đánh giá m
3 Nếu f(m) là tốt hơn hơn hoặc tương đương f(c), vậy thì cần thay thế c với m (Ví dụ c bây giờ là một bản sao của m).
4 Lặp lại bước 2, cho đến khi nào đạt tới một tiêu chí kết thúc
Ý tưởng của hillclimbing nên được trình bày rõ ràng theo thuật toán nêu trên Ở bất
kỳ bước nào, chúng ta có một giải pháp hiện tại, và khi chúng ta nhìn vào một ân cận của
giải pháp này – có vài điểm khác nhau Nếu giải pháp lân cận là một bộ lọc (fitter) (hoặc
tương đương), vậy thì có vẻ như là đây một ý tưởng tốt để chuyển sang lân cận đó; do đó,cần bắt đầu lại với lân cận giống như là với một giải pháp hiện tại mới Ý tưởng căn bảnđằng sau điều này, và đằng sau phương pháp tìm kiếm cục bộ nói chung, đó là sự hội tụcủa các giải pháp tốt Bạn có thể không thực sự mong đợi một cấu trúc liên kết đáng tincậy xuất hiện, ví dụ, thêm một liên kết đơn vào một cấu trúc liên kết không đáng tin cậy.Tuy nhiên, bạn có thể mong đợi rằng một sự thay đổi như vậy có thể biến một cấu trúcliên kết đáng tin cậy thành một cấu trúc liên kết đáng tin cậy hơn
Trong tìm kiếm cục bộ, chúng ta khai thác ý tưởng này bằng cách liên tục tìm kiếmtrong vùng lân cận của giải pháp hiện tại Sau đó chúng ta sẽ chuyển đến một giải phápphù hợp, và tái thực thi quá trình này Sự nguy hiểm ở đây là chúng ta có thể gặp khókhăn trong với cái gọi là ‘tối ưu cục bộ’, tức là giải pháp hiện tại là không đủ tốt cho mụcđích của chúng ta, nhưng tất cả các phương án lân cận của nó thậm chí còn tồi hơn Đây
là điểm không tốt đối với thuật toán leo đồi (hillclimbing), vì đơn giản là nó sẽ bị mắc kẹt
ở đó Các phương pháp tìm kiếm cục bộ khác ngoài hillclimbing, có cách để giải quyếtchính xác tình huống này
Các phương pháp tìm kiếm cục bộ khác được phân biệt chúng với hillclimbing, tuynhiên, có một số cách để giải quyết tình trạng này một cách chính xác Chúng ta sẽ xemxét lại 2 phương pháp ở đây, đây là những phương pháp được sử dụng phổ biến và được
sử dụng ở phần sau trong cuốn sách này Dưới đây là mô phỏng luyện kim (simulatedannealing) và tìm kiếm tabu (tabu search)
Trang 10Simulated annealing
Simulated anneling giống với hillclimbing Sự khác biệt duy nhất là việc thêm vào của 1cặp tham số, một bước phụ mà một số cuốn sách thực hiện với những tham số này, vàđây là điểm chính, bước 3 được thay đổi để sử dụng các tham số này:
1 Bắt đầu: Tạo và đánh giá giải pháp ứng cử ban đầu (một cách ngẫu nhiên); gọi đây là
giải pháp hiện tại c Khởi tạo tham số nhiệt độ T và độ làm mát r (0< r <1).
2 Biến đổi c tạo ra m, kết quả của việc biến đổi c, và đánh giá m
3 Nếu đánh giá test(f(m), f(c), T) là đúng, thì thay thế c bằng m (c bây giờ là bản saocủa m)
4 Cập nhật tham số nhiệt độ (T thành rT)
5 Lặp lại bước 2, cho tới khi đạt được tiêu chí kết thúc
Vấn đề xảy ra trong mô phỏng luyện kim đó là đôi khi chúng ta chấp nhận kết quả củaviệc biến đổi ngay cả khi nó kém hơn cả giải pháp hiện tại Tuy nhiên, chúng không xảy
ra thường xuyên và khả năng kết quả của việc biến đổi kém hơn là rất thấp Ngoài ra,chúng ta có ít khả năng làm như vậy trong thời gian tới Kết quả tổng thể là thuật toán có
cơ hội tốt để thoát khỏi tối ưu cục bộ, do đó có thể tìm kiếm các miền tốt hơn của khônggian sau này Tuy nhiên, hướng cơ bản của sự dịch chuyển về các miền tốt hơn được duytrì Tất cả những điều này được thực hiện trong chức năng test của bước 3 Một ví dụ vềloại sử dụng test là đầu tiên thực hiện:
( ( )f m f c T( ))/
Giả thiết rằng chúng ta thực hiện tối ưu hóa chi phí (nếu không chúng ta chỉ cầnchuyển đổi f(m) và f(c)) Nếu kết quả của việc biến đổi tốt hơn hoặc tương đương giảipháp hiện tại, thì biểu thức trên sẽ lớn hơn hoặc bằng 1 Nếu kết quả của việc biến đổikém hơn, thì kết quả sẽ nhỏ hơn 1 và kém hơn kết quả biến đổi là gần bằng 0 Do đó, kếtquả của biểu thức được sử dụng như một xác suất Tạo ngẫu nhiên 1 số rand, với 0 < rand
< 1 và thực hiện test trong bước 3 chỉ đơn giản là kiểm tra có hay không biểu thức nhỏhơn rand Nếu vậy (luôn luôn được như vậy nếu kết quả biến đổi tốt hơn hoặc tươngđương), chúng ta chấp nhận kết quả biến đổi T là tham số nhiệt độ Với bắt đầu lớn và
Trang 11giảm dần (xem bước 4) theo thời gian Điều bạn có thể nói từ biểu thức trên, là xác suấtcủa kết quả biến đổi kém chấp nhận được cũng sẽ giảm dần theo thời gian.
Mô phỏng luyện kim tạo ra một phương pháp mạnh, mặc dù nó khá khó khăn đểđạt được những tham số đúng Tham khảo A good modern account, Dowsland (1995)
Tabu Search
Một cách khác để thoát khỏi tối ưu cục bộ được cung cấp bởi tìm kiếm tabu (Glover1989; 1989a; Glover and Laguna, 1997) Có nhiều khía cạnh tinh vi để tìm kiếm tabu, ởđây chúng ta chỉ tìm hiểu về bản chất của kỹ thuật Giới thiệu một cách rõ ràng và đầy đủđược cung cấp trong Glover and Laguna (1995; 1997)
Phương pháp tìm kiểm Tabu, như nhiều phương pháp tìm kiếm cục bộ khác khôngbàn và xem xét về các lân cận của giải pháp hiện tại và thậm chí chọn một trong lân cận
để chuyển đến Đặc tính có tính phân biệt này của phương pháp tìm kiếm Tabu là về vấn
đề đưa ra sự lựa chọn như thế nào Đây không đơn giản là việc lựa chọn lân cận nào phùhợp nhất trong số những lân cận đã được kiểm tra Phương pháp tìm kiếm Tabu tính đến
cả sự biến đổi (mutation) mà cho chúng ta kết quả Ví dụ, nếu lân cận tốt nhất trong giải
pháp của bạn là lân cận mà kết nối bằng việc thay đổi liên kết từ node k, nhưng chúng ta
đã thực hiện việc kết nối đó trong lần lặp trước thì có thể một lân cận khác sẽ được lựachọn thay thế, thậm chí nếu sự di chuyển tốt nhất hiện tại là di chuyển gần đây nhất cũng
có thể không được chấp nhận Tìm kiếm tabu cung cấp một cơ chế dựa trên chỉ tiêunguyện vọng cho phép ta chọn nhiều hơn nếu lân cận đang được xem xét mà phù hợp hơn
so với lân cận hiện tại
Do vậy, bất kỳ việc cài đặt phướng pháp tìm kiếm tabu nào đều duy trì một vài dạng
bộ nhớ ghi lại những thuộc tính nhất định của những di chuyển gần đây Những thuộctính này phụ thuộc nhiều vào vấn đề đang xem xét và đây là một phần của việc áp dụngphương pháp tìm kiếm tabu Ví dụ, nếu chúng ta cố gắng tối ưu hóa topo mạng, một dạngcủa bộ biến đổi sẽ phải thay đổi đường cáp liên kết giữa node a và node b Hoặc là trongviệc cài đặt phương pháp tìm kiếm tabu, chúng ta có lẽ chỉ ghi lại sự kiện thay đổi đường
cáp ở lần lặp thứ i, hoặc là đơn giản chỉ ghi lại sự thay đổi trong liên kết giữa node a với
một node mà liên kết với node b Nếu chúng ta chỉ ghi lại kiểu thuộc tính trước đó thì
Trang 12những di chuyển có thể xảy ra gần thời điểm đó có thể không được chấp nhận và khôngphụ thuộc vào các node có liên quan Nếu chúng ta chỉ ghi lại thuộc tính sau đó thì nhữngthay đổi tiềm năng bao gồm node a và (hoặc) node b có thể không được chấp nhận nhưngnhững di chuyển thay đổi cáp có thể được chấp nhận
Phương pháp tìm kiếm cục bộ Artful
Có một vài điểm chú ý về việc thuật toán tabu minh họa đó là khía cạnh quan trọngcủa phương pháp tìm kiểm cục bộ tốt là quyết định lân cận nào cần di chuyển đến Tất cảcác phương pháp tìm kiếm cục bộ thực hiện các ý tưởng cơ bản về di chuyển cục bộ đều
là những ý tưởng tốt Ví dụ, nếu giải pháp hiện tại của bạn tốt thì có thể có một giải pháptốt hơn gần đó và có thể có một giải pháp tốt hơn nữa
Tuy nhiên, rõ ràng là thỉnh thoảng (có lẽ là thường xuyên) chúng ta phải chấp nhậnthực tế là chúng ta chỉ có thể tìm kiếm các giải pháp được cải tiến bằng cách tạm thờithực hiện các giải pháp khác tồi hơn Thuật toán mô phỏng annealing và phương pháp tìmkiếm tabu là hai cách tiếp cận để giải quyết vấn đề này Tuy nhiên, đối với một vấn đề cụthể thì cách tốt nhất trong triển khai và thiết kế hai cách tiếp cận trên là không rõ ràng Cónhiều sự lựa chọn có thể đưa ra: cách đầu tiên có thể là làm cách nào để trình bày mộtgiải pháp đưa ra tại vị trí đầu tiên Lấy ví dụ, một topo mạng có thể được biểu diễn dướidạng cách danh sách của các liên kết trong đó mỗi cặp liên kết là một cặp node (a,b).Việc giải mã danh sách đó thành một topo mạng đơn giản là vẽ liên kết cho mỗi cặp nodetrong danh sách đó Nói cách khác, chúng ta có thể biểu diễn một topo mạng như là mộtchuỗi nhị phân chứa thông tin về các liên kết có thể có Mỗi vị trí trong chuỗi bit này sẽ
có thể thể hiện một liên kết điểm tới điểm Do vậy, một giải pháp đưa ra là “10010 ” cóthể chỉ ra một liên kết điểm tới điểm giữa node 1 và 2, không có liên kết giữa node 1 vànode 3 hoặc là giữa node 1 và node 4 hoặc là có một liên kết giữa node 1 và node 5 Nói chung, trên đây là những cách để đưa ra một phương pháp đại diện cho các giải
pháp của vấn đề Tất nhiên sự lựa chọn cũng ảnh hưởng đến thiết kế của các “operator lân cận” Trong ví dụ trên, loại bỏ 1 liên kết từ topology liên quan đến 2 loại hoạt động
khác nhau trong 2 đại diện Trong trường hợp danh sách cặp node, chúng ta cần thực sự
Trang 13loại bỏ 1 cặp từ danh sách Trong trường hợp nhị phân, chúng ta thay đổi một bit 1 đếnmột bit 0 trong một vị trí cụ thể trong chuỗi.
Đề ra các đại diện và vận hành tốt là một phần của nghệ thuật sử dụng hiệu quả tìmkiếm cục bộ để giải quyết các vấn đề tối ưu hóa cứng Tuy nhiên một phần quan trọngkhác của nghệ thuật này là vấn đề sử dụng tri thức cụ thể hoặc chuẩn đoán tồn tại khi cóthể Ví dụ, một vấn đề với một trong hai đại diện mà chúng ta đã ghi nhận cho đến naycho topology mạng là một topology được tạo ngẫu nhiên điển hình cũng có thể là khôngkết nối Đó là một giải pháp ứng cử có thể chỉ đơn giản là không chứa các đường dẫngiữa mỗi cặp node Thông thường, chúng ta chỉ quan tâm đến các mạng hướng kết nối, vìvậy bất kỳ thuật toán tìm kiếm nào mà effort dành cho kết nối với các mạng hướng khôngkết nối thẩm định thì có vẻ khá lãng phí Đây là nơi mà miền tri thức cơ bản và nhữngchuẩn đoán tồn tại sẽ có ích Đầu tiên, bất kỳ một nhà thiết kế mạng tốt nào đều sẽ biếtcác khái niệm lý thuyết đồ thị khác nhau, chẳng hạn như là: cây spanning, thuật toánđường đi ngắn nhất… Nó không khó để đưa ra 1 thay đổi đại diện danh sách cặp node là
đã kết nối, đảm bảo rằng tất cả các giải pháp ứng viên s chứa 1 cây spanning cho mạng.Một cách để làm điều này là liên quan đến việc giải thích những cặp node đầu tiên giántiếp Thay vì (a, b) chỉ ra rằng mạng này chứa liên kết giữa a và b, nó sẽ có nghĩa là node
a đã kết nối sẽ được liên kết với node b không kết nối Bằng cách này, mọi cặp node tiếptheo cho thấy làm thế nào để tham gia như 1 node chưa được sử dụng để phát triển câyspanning Khi tất cả các node đã được kết nối như vậy, cặp node còn lại có thể được giảithích trực tiếp
Tuy nhiên vấn đề chúng ta giải quyết sẽ liên quan đến vấn đề chi phí, do đó chi phí
của các liên kết cụ thể sẽ đóng vai trò quan trọng trong “hàm vừa đủ” (fitness function).
Miền tri thức cho chúng ta biết một số thuật toán nổi tiếng và nhanh chóng đưa ra đáp áncho việc tìm cây spanning chi phí nhỏ nhất (Kruskal, 1956; Prim, 1957) Do đó nó có thểlàm cho ý nghĩa tốt, tùy thuộc vào các chi tiết khác nhau của vấn đề, để khởi tạo mỗi giảipháp ứng viên với cây chi phí nhỏ nhất, và tất cả những gì chúng ta cần là đại diện chocác liên kết chúng ta thêm vào cây này
Trang 14Có rất rất nhiều cách trong đó miền tri thức hoặc chuẩn đoán tồn tại có thể được sửdụng để hưởng lợi từ phương pháp tiếp cận tìm kiếm cục bộ cho vấn đề tối ưu hóa Một
số về vấn đề này có thể cho chúng ta biết, ví dụ những loại biến đổi có cơ hội tốt hơn dẫnđến lân cận tốt Một phương thức chuẩn đoán hiện có cho biết nhanh chóng giao các kênhtrong mạng di động, có thể được sử dụng để cung cấp điểm khởi tạo cho tìm kiếm cục bộ
mà cố gắng để tìm ra giải pháp tốt hơn
1.3.2 Tìm kiếm dựa trên tập hợp
Một lựa chọn khác của thuật toán, hiện giờ đang rất phổ biến, được xây dựng dựa trên
ý tưởng về tìm kiếm cục bộ bằng cách sử dụng tập hợp các giải pháp “hiện tại” thay vìchỉ một Có 2 cách mà điều này có khả năng tương cường cơ hội tìm kiếm giải pháp tốt.Đầu tiên, khi chúng ta có 1 tập hợp, chúng ta có thể dành thời gian 1 cách hiệu quả để tìmkiếm trong nhiều khu vực lân cận khác nhau như một Thuật toán dựa trên tập hợp có xuhướng chia sẻ effort tính toán đến các giải pháp ứng viên khác nhau trong 1 cách thiên vị
bởi “tương quan vừa đủ” (relative fitness) của chúng Đó là, nhiều thời gian sẽ được dùng
để tìm kiếm các vùng lân cận của các giải pháp tốt hơn là các giải pháp trung bình
Tuy nhiên, tối thiểu cần một ít thời gian cho việc tìm kiếm trong những miền nghiệm ônhòa hoặc thô, nên điều này dẫn đến việc tìm kiếm một đột biến đặc biệt tốt trên đường đi,sau đó các cân bằng tải của nỗ lực tính toán sẽ được sửa đổi cho phù hợp
Một hướng tiếp cận khác được cung cấp bởi kỹ thuật dựa trên tổ hợp là chúng ta thử
sử dụng toán tử tái tổ hợp Đây là cách để tạo ra những đột biến, nhưng lần này từ 2 hoặcnhiều các nghiệm cha chứ không phải chỉ 1 Do đó kết quả được gọi là một tổ hợp chứkhông phải là một đột biến Tái tổ hợp cung cấp một cách có nguyên tắc tưởng đối để giảithích sự dịch chuyển của một vùng lân cận lớn Một trong những khó khăn của tìm kiếmcục bộ là ngay cả các kỹ thuật tiên tiến như mô phỏng và tìm kiếm cũng khó khăn để tối
ưu cục bộ, nó chỉ “thoát” trừ khi nó có thể là một đột biến khá quyết liệt Đó là thuật toán
có thể thử tất cả các chuyển động cục bộ có thể, và do đó phải bắt đầu thử với các dichuyển phi cục bộ nếu nó có bất kỳ cơ hội nào để đạt được bất kỳ nơi nào Vấn đề thực tế
ở đây là có rất nhiều khả năng di chuyển phi cục bộ Thật vậy các lân cận ”phi cục bộ” làtoàn bộ không gian khả năng!
Trang 15Tái tổ hợp là một phương pháp cung cấp một cách lựa chọn di chuyển phi cục bộ tốt
từ một không gian lớn các khả năng Ví dụ, nếu 2 nghiệm cha là mỗi vécto của k phần tử,một toán tử tái tổ hợp được gọi là giao đơn điệu (uniform crossover), sẽ tạo ra mộtnghiệm con từ 2 nghiệm cha này bằng cách, với mỗi phần tử được trả ra lấy ngẫu nhiêngiá trị của nó tử một trong 2 điểm Mỗi nghiệm con có thể khác biệt tới 50% cha mẹ của
nó, và lớn hơn rất nhiều so với sự khác biệt điển hình giữa một nghiệm cha đơn với mộtvài lân cận cục bộ của nó
Dưới đây là những bước cho một thuật toán dựa trên tổ hợp chung:
1 Bắt đầu: sinh ra một tập ban đâu các giải pháp có khả năng nhất (candidate) Đánh giáchúng
2 Lựa chọn một vài tập làm cha
3 Áp dụng toán tử tái tổ hợp và đột biến để từ các bộ cha mẹ tạo ra các bộ con
4 Kết hợp các bộ con được sinh ra vào tập hợp
5 Cho đến khi đạt được tiêu chí kết thúc, thì quay trở lại bước 2
Có rất nhiều cách để thực hiện ở mỗi bước, nhưng có những điểm quan trọng như sau.Bước 2 thường sử dụng chiến lược chọn lọc tự nhiên (survival of the fittest), đây là nơi
mà các tải chia sẻ (load sharing) được thảo luận ở trên sẽ được áp dụng Các nghiệm ứngviên được tạo thành, càng nhiều cơ hội nó trở thành cha, và do đó có nhiều cơ hội hơn đểthuật toán tìm ra các vùng lân cận của nó Có những kỹ thuật chọn lựa khác nhau, hầu hếtđều được tham số hóa để thay đổi mức độ để các tổ hợp cha được tạo ra ưa thích hơn( các áp lực chọn lọc) Bước 3 áp dụng các toán tử tái tổ hợp hoặc đột biến, hoặc cả hai.Đây có tất cả các toán tử tái tổ hợp và đột biến, nhưng như chung tôi gợi ý trên, những lợiích thực sự đến khi một vài suy nghĩ đã được đưa vào thiết kế cụ thể các loại toán tử sửdụng miền tri thức Trong bước 4, nhớ rằng chúng ta luôn duy trì một kích thước tổ hợp
cố định Vì vậy, nếu chúng ta có một tổ hợp 100, nhưng 20 phần tử con được thêm vào,thì 20 của 120 phần tử phải được loại bỏ Một cách tiếp cận phổ biến nhất là chỉ đơn giảnloại bò 20 phần tử ít phù hợp nhất với các nhóm kết hợp, nhưng có một vài phương phápkhác; chúng ta có thể sử dụng công nghệ được gọi là “dồn nén” (crowding), eg De Jonh(1975), trong đó đa dạng đóng vai trò quyết đinh về những giải pháp ứng viên để loại bỏ
Trang 16Ví dụ, chúng ta chắc chắn sẽ thích để loại bỏ giải pháp S có lợi và một giải pháp t ít phùhợp, nếu điều đó xảy ra là trường hợp đó là một bản sao trong dân số, nhưng t là “mới”.
Ví dụ, chúng tôi chắc chắn sẽ thích để loại bỏ giải pháp tội ủng hộ một giải pháp t ít phùhợp, nếu điều đó xảy ra là trường hợp đó salready có một bản sao trong dân số , nhưng tis'mới' Cuối cùng, chúng ta phải chỉ ra một số vấn đề thuật ngữ Có rất nhiều thuật toándựa trên dân số , và trong thực tế, họ thường được gọi là thuật toán tiến hóa ( địa bàn ) Một thuật ngữ phổ biến được sử dụng là thuật toán di truyền , mà đúng đề cập đến mộtgia đình của các phương pháp như vậy mà luôn luôn sử dụng một nhà điều hành tái tổhợp (Hà Lan , 1965; Goldberg , 1989) , trong khi các gia đình khác của thuật toán nhưvậy, gọi là lập trình tiến hóa ( Fogel , 1995) và tiến hóa chiến lược ( trở lại, 1996) , xuhướng sử dụng đột biến một mình, nhưng khá thông minh về cách họ sử dụng nó Trongmọi trường hợp , một giải pháp ứng cử viên có xu hướng được gọi là một phần tử của nóchromosomeand được gọi là gen
Kỹ thuật tính toán thích nghi
Để giải quyết các nhu cầu tối ưu hóa vốn có trong môi trường liên tục thay đổi viễnthông, sử dụng trực tiếp của các kỹ thuật tối ưu hóa cục bộ hoặc dân số dựa đôi khi có thể
là khá phù hợp Điều này có thể bởi vì nó có thể mất quá lâu để hội tụ về một giải pháptốt , và như vậy vào thời điểm các giải pháp đến , vấn đề đã thay đổi!
Những gì chúng ta cần thay vì trong bối cảnh này là một cách để đưa ra quyết định rấtnhanh, nhưng rất tốt, là Ví dụ, để quyết định những gì là tốt nhất ' bước kế tiếp " là chomột gói tin đến tại node một với điểm đến d , chúng ta có lẽ có thể chạy một mô phỏngcủa mạng lưới cho các mô hình giao thông hiện hành hiện tại và ước tính thời gian đếnkhả năng tại điểm đến cho cho bước nhảy tiếp theo có thể Kết quả của một mô phỏngnhư vậy sẽ cung cấp cho chúng ta một sự lựa chọn đầy đủ thông tin , và sau đó chúng tôi
có thể gửi các gói dữ liệu phù hợp trên đường
Bây giờ, nếu chúng ta có thể ở trên trong một vài micro giây , chúng tôi sẽ có mộtchiến lược gói tin định tuyến phù hợp và rất có lợi nhuận Tuy nhiên, vì nó có thể sẽ mất
Trang 17vài giờ để làm một mô phỏng chính xác bằng cách sử dụng loại sức mạnh xử lý và bộnhớ thường có sẵn tại mạng chuyển mạch , trong thực tế nó là một ý tưởng vô lý!
Thay vào đó, chúng ta cần một số cách để đưa ra quyết định tốt một cách nhanhchóng, nhưng nơi quyết định sẽ bằng cách nào đó có tính đến các hoàn cảnh hiện hành
Lý tưởng nhất, chúng tôi đang tìm kiếm một ' hộp đen ' mà, khi cho ăn với một câu hỏi vàmột số chỉ tiêu môi trường, cung cấp một câu trả lời hợp lý và ngay lập tức Một ví dụ vềmột hộp đen như là một bảng định tuyến của các loại thường được tìm thấy trong cácmạng chuyển mạch gói Các câu hỏi của một gói tin truyền thông là : " Cuối cùng tôimuốn để có được d , vì vậy mà tôi nên đi tiếp theo?' Bảng định tuyến, thông qua một tracứu đơn giản lập chỉ mục của d , rất nhanh chóng cung cấp một câu trả lời và gửi nó trênđường Những rắc rối với điều này , tất nhiên, là nó về cơ bản là không thích nghi Trừmột số giao thức quản lư mạng tiên tiến đang hoạt động , bảng định tuyến sẽ luôn luôncung cấp cho các câu trả lời tương tự , ngay cả khi liên kết trở đi từ đề nghị bước kế tiếp
để dis rất nhiều tắc nghẽn tại thời điểm này Hộp đen của chúng tôi do đó phải thườngxuyên thay đổi bằng cách nào đó , và thích ứng với các điều kiện hiện hành Trong thực
tế, chương tám và chín cả hai thảo luận về cách để làm điều này liên quan đến các bảngđịnh tuyến trong các mạng chuyển mạch gói
Vì vậy, kỹ thuật thích ứng trong bối cảnh viễn thông có xu hướng liên quan đến cáchộp đen , hoặc các mô hình , mà bằng cách nào đó tìm hiểu và thích ứng với ' ẩn ' nhưng
có thể phản ứng rất nhanh chóng và thích hợp khi được hỏi cho một quyết định Trongmột số các chương có liên quan đến thích ứng, các kỹ thuật được sử dụng là những ngườichúng ta đã thảo luận đã có trong phần 1.3 , nhưng thay đổi một cách thích hợp trong ánhsáng của sự cần thiết phải quyết định nhanh chóng Mặc dù vậy, ở những người khác ,nhất định kỹ thuật quan trọng khác hiện đại được sử dụng , mà bây giờ chúng tôi sẽ giớithiệu một thời gian ngắn
Ví dụ, chúng ta muốn loại bỏ solution s để có lợi cho solution t ít phù hợp hơn, nếuxảy ra trường hợp s đã có một bản sao trong quần thể còn t là ‘mới’ Cuối cùng, chúng ta
sẽ chỉ ra vài vấn đề về thuật ngữ Thực tế, có nhiều thuật toán dựa trên quần thể (population based) (hay còn gọi là thuật toán tiến hóa (evolutionary algorithms – EAs)).
Trang 18Một thuật ngữ phổ biến khác được sử dụng là thuật ngữ “thuật toán di truyền” (geneticalgorithm), liên quan đến một họ các phương pháp sử dụng toán tử tái tổ hợp(recombination operator) (Holland, 1965; Goldberg, 1989), trong khi đó, các họ kháccủa thuật toán đó lại được gọi là lập trình tiến hóa (evolutionary programming) (Fogel,1995) và chiến lược tiến hóa (Bäck, 1996), có xu hướng sử dụng đột biến một mình(mutable alone) Trong mọi trường hợp, một solution ứng viên được gọi là NST, và cácthành phần của nó được gọi là các gene.
1.4 Kỹ thuật tính toán thích nghi
Để giải quyết nhu cầu tối ưu trong môi trường viễn thông luôn luôn thay đổi, sử dụngtrực tiếp các kỹ thuật tối ưu cục bộ (local optimization) hoặc tối ưu quần thể cho kết quảkhông phù hợp Lý do là nó mất nhiều thời gian để hội tụ về một solution tốt, vì thế thờiđiểm mà nó đưa ra solution thì bài toán đã thay đổi
Cái chúng ta cần là một cách đưa ra các decision nhanh và tốt VD, để xác định xem
“bước kế tiếp”(next hop) cho một gói tin từ node a (đích đến là node d ), chúng ta có thể
chạy mô phỏng mô hình giao thông mạng (network traffic model) ở thời điểm hiện tại và
ước lượng gần đúng thời điểm đến node d với các “bước kế tiếp” hiện tại của node a Tuy
nhiên, vì thời gian để có thể dựng mô phỏng với phần cứng của bộ chuyển mạch mạng(network switch) lên đến nhiều giờ nên ý tưởng chạy mô hình mô phỏng không phù hợp.Thay vào đó, chúng ta cần một cách khác Lý tưởng nhất, chúng ta đang tìm một “hộpđen” (black box), đầu vào là question và các điều kiện hiện tại còn đầu ra là answer hợp
lý và ngay lập tức VD về “hộp đen”: Bảng định tuyến (Routing table) Question được hỏi
bởi gói tin là: “Tôi muốn đi đến node d, vậy bước tiếp theo tôi nên đi như thế nào?”.
Routing table đưa ra một cách nhanh chóng câu trả lời nhanh chóng và gửi gói tin đi.Cách làm này về cơ bản là không linh hoạt (non-adaptive) Nếu một số giao thức quản lýmạng tiên tiến (advanced network management protocols) không hoạt động, routing table
luôn đưa ra cùng 1 answer, thậm chí ngay cả khi đường đi đến d mà nó suggest đang bị
tắc nghẽn ở thời điểm hiện tại Vì thế, hộp đen của chúng ta phải có khả năng thay đổi đểthích hợp với điều kiện hiện tại Chương 8 và chương 9 sẽ thảo luận về cách để thực thivấn đề này liên quan đến routing table trong mạng chuyển mạch gói
Trang 19Đây là sự ước lượng về thần kinh, logic mờ và lý thuyết trò chơi Vai trò của ướclượng thần kinh trong hoàn cảnh này là phát triển một mô hình ẩn, mô hình đó nghiêncứu ( từ ví dụ) để làm thế nào có quyết định đúng đắn trong tập các trường hợp khácnhau Kết quả tạo ra sẽ như một mạng lưới thần kinh, sau đó để làm việc trực tuyến nhưthế nào thì nhà sản xuất sẽ quyết định Vai trò của logic mờ là đưa ra cách để tạo ra cácquy định vững chắc, đây là những quy định để ra quyết định Điều này về cơ bản là tạo racách giải quyết của hộp đen, giống như một mạng lưới thần kinh nhưng với hoạt độngbên trong khác nhau Cuối cùng lý thuyết trò chơi sẽ đưa ra một cách nhìn khác, đó làmột kịch bản mạng năng động Về cơ bản, nếu chúng ta xem một số khía cạnh của quản
lý mạng như là một 'trò chơi', một tập hợp các phương trình và các mô hình được biết đếnbắt đầu hoạt động, nó sẽ lần lượt cung cấp những phép tính gần đúng của mạng năngđộng thực sự
1.4.1 Tính toán hệ thần kinh
Tính toán hệ thần kinh (Rumelhart và MacClelland năm 1989; Haykin, 1998) về cơbản là một kỹ thuật phân loại mô hình, nhưng ngay từ cái nhìn đầu tiên nó đã cho thấykhả năng ứng dụng rộng rãi hơn Sức mạnh thực sự của phương pháp này nằm trong thực
tế và chúng ta không cần phải biết cách phân biệt các loại mô hình Ta cần xây dựng một
hệ thống chuyên gia dựa trên nguyên tắc cổ điển, ví dụ chúng ta cần phải có các quy tắcrồi mới xây dựng thành hệ thống Nếu chúng ta sử dụng cách tính toán hệ thần kinh, tuynhiên một loại đặc biệt của hộp đen được gọi là “mạng lưới thấn kinh” sẽ chủ yếu học cácquy tắc cơ bản bằng ví dụ Một ứng dụng điển hình của kỹ thuật này là đánh giá rủi ro tíndụng Các quy tắc là cơ sở ra quyết định về người sẽ hoặc sẽ không thể là một rủi ro tíndụng, giả định rằng chúng ta bỏ qua trường hợp những người có tài sản thế chấp caonhưng lương thấp, nó tương đối phức tạp Chúng ta có thể đào tạo một mạng lưới thầnkinh để dự đoán rủi ro xấu, tuy nhiên, chỉ đơn giản bằng cách cung cấp một bộ các ví dụđược biết trước, chẳng hạn như 'người p từ vùng r với lương s và nghề y trả chokhoản vay kích cỡ m; người q với mức lương t và vv Với p, r, s, vv, như đầu vào, cácmạng lưới thần kinh dần dần tự điều chỉnh trong nội bộ một cách hợp lý để cuối cùng sẽcho kết quả chính xác (chỉ khả năng mặc định của khoản vay) và đó chính là những ví dụ
Trang 20đã được đào tạo trước Đáng chú ý, và rất hữu ích, chúng ta có thể hi vọng là các mạnglưới thần kinh có thể đưa là các dự đoán một cách nhanh chóng và tốt khi chúng ta cungcấp thông tin đầu vào mà trước đó chưa có trong dữ liệu
Trong nội bộ, một mạng lưới thần kinh là một cấu trúc rất đơn giản; nó chỉ là một tậphợp các node (đôi khi được gọi là "tế bào thần kinh nhân tạo”) với các liên kết đầu vào vàđầu ra, mỗi node trong số đó có cách xử lý khá đơn giản nó thêm các số thông qua cácliên kết đầu vào của nó, mỗi trọng số bằng một giá trị mạnh (gọi là trọng lượng) liên quanđến việc liên kết giữa nó với đối tượng khác, sau đó nó sẽ xử lý tổng hợp và gửi kết quảlên liên kết đầu ra của nó Với cách gọi là " feed-forward " mạng lưới thần kinh là mộttập hợp các node như vậy, tổ chức thành lớp Vấn đề sẽ được đưa vào lớp đầu tiên, sau đó
nó xử lý và kết quả sẽ được đưa vào lớp thứ 2, và cứ như vậy, mặc dù chúng thường chỉ
có 3 lớp Rõ ràng những con số đi ra ở cuối ( kết quả) sẽ phụ thuộc vào những gì đã đivào đầu vào, nó liên quan mật thiết và được xác định bởi trọng số của các liên kết
Cách cổ điển, đây là một phương pháp gọi là lan truyền ngược (Rumelhart vàMacClelland 1989), nhưng cũng có nhiều phiên bản hiện đại Trên thực tế, các loạimạng mà chúng tôi đã mô tả ngắn gọn ở đây chỉ là một trong nhiều loại có sẵn (Haykin,1999)1989), nhưng có rất nhiều biến thể hiện đại Trên thực tế, các loại mạng chúng ta đã
mô tả một cách ngắn gọn ở đây chỉ là một trong nhiều loại có sẵn
1.4.2 Logic mờ
Trong một số trường hợp chúng ta có thể nghĩ về các quy tắc hợp lệ cho miền giá trịcủa vấn đề Ví dụ, “nếu lưu lượng đông đúc, sử dụng node a’ và ‘nếu lưu lượng rất đôngđúc, sử dụng node b’ Tuy nhiên, những quy luật như vậy không thực sự hữu ích nếukhông có một cách tốt để quyết định rằng “đông đúc” hay “rất đông đúc” thực sự có ýnghĩa gì Trong cách tiếp cận hệ thống chuyên gia cổ điển, chúng ta sẽ áp dụng ngưỡngđược xác định trước cho những cái gọi là “biến ngôn ngữ”, và quyết định, ví dụ, “lưulượng đông đúc” có nghĩa là việc sử dụng liên kết trong câu hỏi là giữa 70% và 85%.Điều này có vẻ tốt, nhưng không khó để thấy rằng việc sử dụng 69.5% có thể là nguyênnhân gây ra các vấn đề; trong một kịch bản như vậy, quy luật có điều kiện là “lưu lượng
Trang 21trung bình” (có thể là từ 55% đến 70%) sẽ được sử dụng, nhưng nó có thể thích hợp hơn,
và mang lại một kết quả tốt hơn là sử dụng “lưu lượng đông đúc”
Logic mờ cung cấp một cách để sử dụng các biến ngôn ngữ để giải quyết vấn đềngưỡng một cách rất tự nhiên và mạnh mẽ Thực tế, nó gần như loại bỏ nhu cầu ngưỡng,thay vì giới thiệu những thứ gọi là “các chức năng thành viên” Chúng ta không còn cólưu lượng đông đúc hay trung bình Thay vào đó, một giá trị lưu lượng nhất định cho lưulượng ở mức đông đúc và một giá trị cho mức độ trung bình Các mức độ phụ thuộc vàocác giá trị số thực tế bằng cách các chức năng thành phần, thường đơn giản là “chức nănghình tam giác” Ví dụ, mức độ lưu lượng nặng có thể là 0 giữa 0% và 35% sử dụng, sau
đó nó có thể tăng lên 1 giữa 35% và 75%, và sau đó lại giảm xuống 0 giữa 75% và 90%.Chức năng thành phần (membership function) cho biến ngôn ngữ “rất nặng” sẽ chồngchéo nhau với điều này, bởi vậy một giá trị lưu lượng 82.5% có thể là ‘nặng’ đến mức 0.5
và ‘rất nặng’ đến mức 0.7
Với mỗi điều kiện môi trường nhất định, các quy tắc khác nhau sẽ áp dụng nhữngmức độ khác nhau Đặc biệt, logic mờ cung cấp nhiều cách để xác định mức độ mà cácquy luật khác nhau được áp dụng khi các thành phần điều kiện trong quy luật liên quanđến nhiều biến ngôn ngữ Chương 8 sử dụng logic mờ, sẽ thảo luận chi tiết hơn về vấn đềnày
Sức mạnh chính của logic mờ là chúng ta chỉ cần đảm bảo rằng các chức năng thànhphần là hợp lý Hệ thống kết quả, với các quyết định phù hợp, hướng tới các biến thểtrong các chức năng thành phần, trong giới hạn hợp lý Tuy nhiên chúng ta có thể phảilàm một số việc, là xây dựng các nguyên tắc hoạt động Đây là nơi việc học ‘offline’ đưa
ra trong khi chúng ta đang sử dụng logic mờ trong một môi trường thích nghi Đôi khi,các thuật toán di truyền có thể được sử dụng cho nhiệm vụ xây dựng một tập các quy luậttốt
1.4.3 Lý thuyết trò chơi
Cuối cùng, lý thuyết trò chơi cung cấp một cách khác để nhìn vào các vấn đề phứctạp, dynamic và liên quan đến giao tiếp, đặc biệt là liên quan đến quản lý mạng và cungcấp dịch vụ Xem xét các quá trình ra quyết định phức tạp liên quan trong việc quyết định
Trang 22những gì để thiết lập cho lời gọi kết nối hoặc cung cấp dịch vụ dữ liệu trong một môitrường mạng động, liên quan đến cạnh tranh với nhiều nhà cung cấp dịch vụ khác
Tổng kết
Phương pháp Heuristic và các kĩ thuật thích hợp được ứng dụng trong rất nhiều trongviễn thông liên quan tới việc tối ưu Nó được chia làm 3 phần chính , tương đương với 3vấn đề thường gặp Thứ nhất, đó là vấn đề thiết kế và tổ chức mạng Trong thực tế, có rấtnhiều hoạt động sử dụng kĩ thuật Heuristic hiện đại, việc thiết kế mạng sẽ đơn giản vớicác vấn đề tối ưu do các vấn đề này đã được xác định rõ rang.Điều đó có nghĩa là Chúng
ta có thể tiết kiệm nhiều thời gian và công sức để phát triển 1 kĩ thuật tối ưu tốt nhờ sửdụng các thuật toán và cơ chế đặc tả Khi một giải pháp được thiết kế, nó có thể đượcthực hiện cài đặt trong vài tuần hoặc vài tháng
Ngược lại, với vấn đề định tuyến và sử dụng giao thức được nói đến trong phần 2, baogồm các kĩ thuật tối ưu động gồm 2 vấn đề liên quan đến tối ưu thời gian tiêu thụ.vấn đềchính ở phần này là tập trung vào các phương thức để thực thi và tích hợp mô hình “hộpđen” Trong một trường hợp , hộp đen là mạng tự nhiên , trường hợp khác, nó là tập luậtlogic mờ hay 1 form được đặc tả trong bảng định tuyến
Phần 3 xem xét phạm vi vấn đề , bao gồm phần mềm , chiến thuật , phương thức quản lýlưu lượng Phát triển phần mềm cũng có nhiều vấn đề trong lĩnh vực viễn thông tuy nhiên
nó cũng cung cấp nhiều giải pháp hợp lý trong việc cung cấp dịch vụ Các vấn đề cungcấp dịch vụ , trang bị trong mạng, đều cần tới những ưu điểm và tính linh động của cácphần mềm Tuy nhiên các phần mềm cần nhiều thời gian để phát triển Phần 3 cũng chỉ
ra tầm quan trọng của “chiến lược” bang cách xem xét các vấn đề của việc quản lý 1mạng động phức tạp Các vấn đề bao gồm cấp phát dịch vụ , quản trị luồng dữ liệu.Trong mỗi trường hợp , một cách tiếp cận dựa vào lý thuyết game được tích hợp Cuốicùng , ở phần 3 cũng chỉ ra vẫn đề quản lý băng thông trong cả mạng cố định và mạng diđộng
Chính vì vậy, chúng tôi đã bao quát một phạm vi rộng của các vấn đề tối ưu mạngviễn thông trong quyển sách này Chúng tôi đã trình bày một tập các vấn đề cần đượchoàn thiện Các vấn đề tương tự trong việc kết nối các kĩ thuật lại cũng được nhắc đến
Trang 23Việc phát triển các kĩ thuật tính toán đã được tích hợp và cài đặt nhanh chóng trong lĩnhvực viễn thông
CHƯƠNG IV: Search and Evolutionary Scatter Search for ‘Tree-Star’ Network
Problems, with Applications to Leased-Line Network Design
4.1 Giới thiệu
Dịch vụ dữ liệu kỹ thuật số (DDS) được sử dụng rộng rãi cho việc cung cấp dịch vụvận chuyển kỹ thuật số riêng chất lượng cao trong ngành công nghiệp viễn thông Các kếtnối mạng của DDS là vĩnh viễn và các phương tiện truyền dẫn của nó là chuyên dụng,cho phép nó chuyển dữ liệu kỹ thuật số với ít nhiễu hơn và bảo mật hơn so với dịch vụchuyển mạch DDS cũng chứng minh thích hợp cho việc liên kết các web mà có các ứngdụng đòi hỏi một kết nối thường xuyên và truyền dữ liệu thường xuyên Ví dụ, nó có thểđược sử dụng để truy cập mạng LAN từ xa, hỗ trợ cho các hệ thống giao dịch, và có thểđược sát nhập vào kiến trúc hệ thống mạng của IBM và các mạng khác Với thiết kếmạng tối ưu và dễ sử dụng, DDS trở thành cuộc cạnh tranh kinh tế với dịch vụ frame
Trang 24relay trong phạm vi đường truyền tốc độ cao và với dịch vụ đường truyền analog trongphạm vi đường truyền thấp hơn.
Trong chương này, chúng ta giải quyết một vấn đề thiết kế mạng DDS cơ bản mà phátsinh trong các ứng dụng thực tế của một công ty viễn thông hoa kỳ Các yếu tố quyếtđịnh của vấn đề bao gồm một tập hữu hạn các địa điểm của khách hàng được phân phối
về mặt địa lý trên máy bay Một subset của các trung tâm được chọn là active tùy thuộcvào hạn chế hình thành một mạng trong đó cứ hai trung tâm hoạt động để giao tiếp vớinhau , do đó tạo thành một cây bao trùm Mỗi trung tâm có một chi phí cố định để đượclựa chon hoạt động và mỗi link (edge) có một chi phí kết nối trong cây mở rộng Mỗiđịa điểm của khách hàng phải được kết nối trực tiếp đến “end office” được chỉ định riêngcho nó mà lần lượt kết nối tới chính xác một trung tâm hoạt động, do đó cho phép mỗihai khách hàng giao tiếp với nhau thông qua mạng lưới trung tâm Điều này cũng phảigánh chịu một chi phí kết nối trên các edge giữa vị trí của khách hàng và trung tâm liênquan đến nó Mục tiêu là để thiết kế mạng lưới với chi phí tối thiểu
Hình 4.1 Mạng DDS
Hình 4.1 cho thấy một kịch bản thực tế của mạng DDS nhỏ Số lượng các dòngcần thiết cho việc liên kết giữa end office và trung tâm bằng số lượng các địa điểm kháchhàng kết nối với end office Vì những liên kết giữa địa điểm khách hàng và end office
Trang 25luôn luôn cố định, giá của những liên kết là hằng số và do đó có thể bỏ qua việc thiết kếmạng.
Trong thực tế, chi phí kết nối đường dây là khoảng cách nhạy cảm và được tính theophí thuế quan được thành lập bởi ủy ban Truyền thông liên bang FCC Những khoản phínày bao gồm chi phí cố định để sử dụng và chi phí biến đổi có liên quan đến khoảngcách Với mỗi trung tâm hoạt động, ngoài chi phí bắc cầu cố định, một phí cũng đượctruy cập cho mỗi đường kết nối vào/ra trung tâm Để minh họa các chi phí có liên quanđến mạng DSS, giả sử dữ liệu chi phí hàng tháng được cho là trong bảng 4.1 Sau đó, cácchi phí hàng tháng cho các mạng đưa ra trong hình 4.1 chi tết trong bảng 4.2
Như đã nói ở trên, vấn đề thiết kế mạng DDS có thể được đơn giản hóa bằng cáchtham chiếu đến một Steiner Tree framework Vì chi phí liên kết cho mỗi đường giữa mộtend office và một trung tâm tiềm năng đã được biết và chi phí bắc cầu mỗi đường chonhững hub cũng có sẵn, chúng ta có thể tính toán trước chi phí kết nối một địa điểmkhách hàng đến một hub bằng cách cộng hai chi phí này V́ vậy, những end offices có thểđược loại bỏ và các vấn đề mạng DDS có thể được chuyển đổi thành một phần mở rộng
của Steiner Tree problem Vấn đề mở rộng này lần đầu tiên được khám phá bởi Lee et al
(1996), người chỉ ra những hubs như ‘Steiner nodes’ và địa điểm khách hàng như ‘targetnodes’, do đó đưa ra các vấn đề này cái tên Steiner tree-star (STS) problem
Bảng 4.1 Dữ liệu chi phí hàng tháng cho một mạng đường truyền thuê bao riêng