Luận văn này đề xuất thuật toán kết hợp tìm kiếm với số lượng hàng xóm lớn HLNS để giải quyết bài toán đạt chất lượng kết quả tốt trong lượng thßi gian xác định trên một số bộ dữ liệu ch
Trang 1Đ¾I HæC QUêC GIA HÀ NÞI TR¯àNG Đ¾I HæC CÔNG NGHà
Trang 3L ái CÁm ¡n
Đầu tiên, tôi xin gửi lßi cảm ¢n đến PGS TS Hoàng Xuân Huấn, giảng viên tại bộ môn khoa học máy tính thuộc khoa công nghệ thông tin Trong khi làm luận văn, thầy đã hướng dẫn tôi rất tận tình chu đáo Không chỉ giới thiệu những kiến thāc hữu ích, thầy còn truyền cảm hāng đến tôi về những āng dụng
tự nhiên lý thú Tôi ngày càng trưáng thành h¢n không chỉ về nhiều kiến thāc h¢n, mà còn cả về nhận thāc về đßi sống thực tại Tôi vô cùng kính phục và cám
¢n thầy
Tiếp theo, tôi vô cùng cảm ¢n bố mẹ đã luôn á bên cạnh hỗ trợ tôi, giúp tôi trong hầu hết các vấn đề gặp phải trong cuộc sống Tôi xin cảm ¢n gia đình tôi, n¢i tôi được sinh ra và lớn lên, n¢i có rất nhiều kỷ niệm đẹp ảnh hưáng sâu sắc đến những tư duy cÿa tôi trong luận văn này Nhß tình thư¢ng vô bß bến cÿa
họ, tôi đã không phải chịu quá nhiều áp lực cÿa cuộc sống mưu sinh đầy vất vả,
có thêm nhiều thßi gian dành cho luận văn này Đây là động lực chính giúp tôi hoàn thành xong luận văn này
Cuối cùng, tôi cảm ¢n bạn bè và đồng nghiệp đã tạo điều kiện giúp tôi, cùng tôi đi tiếp trên những chặng đưßng đầy thách thāc không chỉ trong công việc mà còn các vấn đề ngoài cuộc sống Tôi xin gửi lßi cảm ¢n đến toàn bộ tập thể trưßng đại học Công Nghệ, trực thuộc đại học quốc gia Hà Nội à đây, tôi đã được sống trong môi trưßng năng động, trẻ trung, tràn trề c¢ hội và thách thāc
Tác gi Á
Đinh Vn Viát
Trang 4L ái Cam Đoan
Tôi xin cam đoan đây là công trình nghiên cāu cÿa tôi dưới sự giám sát cÿa PGS.TS Hoàng Xuân Huấn Các phần đóng góp trong luận văn này chưa được nộp cho một trình độ hoặc bằng cấp tại đây hoặc bất cā các tổ chāc nghiên cāu giáo dục đại học Các đóng góp và kết quả được trình bày trong luận văn này hoàn toàn được kiểm nghiệm rõ ràng bằng các thực nghiệm dựa trên nhiều
bộ dữ liệu được chấp thuận và sử dụng bái cộng đồng khoa học Các phần có sự đóng góp cÿa ngưßi khác vào luận văn này đều được xin phép và có được sự đồng ý chấp thuận cÿa họ Các phần kiến thāc liên quan được sử dụng trong luận văn này đều được tham chiếu rõ ràng từ các nguồn tham khảo được công đồng khoa học công nhận và được liệt kê đầy đÿ tại mục liệt kê tham khảo
Tác gi Á
Đinh Vn Viát
Trang 5Danh sách ký hi áu và viết tắt
NP Nondeterministic polynomial Problem
P Polynomial Problem
MDS Minimum dominating set
GA Genetic Algorithm
ACO Ant Colony Optimization
PSO Particle Swarm Optimization
MA Memetic Algorithm
LS Local Search
LNS Large Neighborhood Search
IP Integer Programming
Trang 6HGA Hybrid Genetic Algorithm
ACO-LS Hybrid ACO and local search
ACO-PP-LS
Hybrid ACO and local search with intialization
HMA Hybrid Memetic Algorithm
based scoring function
Trang 7Tóm T ắt Nßi Dung
Bài toán tập đỉnh thống trị có trọng số nhỏ nhất (MWDS) là một trong những bài toán NP-Hard kinh điển được nhiều nhà nghiên cāu quan tâm và đã được āng dụng vào trong thực tiễn Nhiều āng dụng được tạo ra để đáp āng sự phát triển cÿa các mạng lưới từ sự phát triển cÿa xã hội Các āng dụng này chÿ yếu liên quan đến việc thiết kế và tận dụng các tài nguyên lợi ích thu được từ các mạng lưới này Hầu hết, các āng dụng đều có liên quan đến bài toán tập đỉnh thống trị Tuy đã có rất nhiều thuật toán được đề xuất, nhưng các thuật toán vẫn chưa đÿ hiệu quả để giải quyết bài toán trên Luận văn này đề xuất thuật toán kết hợp tìm kiếm với số lượng hàng xóm lớn (HLNS) để giải quyết bài toán đạt chất lượng kết quả tốt trong lượng thßi gian xác định trên một số bộ dữ liệu chuẩn Thực nghiệm đã chỉ ra rằng thuật toán hiệu quả h¢n các thuật toán đã có trên các
bộ dữ liệu thực tế BHOSLIB và DIMACS Cuối cùng, luận văn giới thiệu về āng dụng moderator-selector để chọn ngưßi điều hành cho một nhóm hoặc một
tổ chāc trên một mạng lưới cho trước
Trang 8M ục lục
Lßi Cảm ¡n 3
Lßi Cam Đoan 4
Danh sách ký hiệu và viết tắt 5
Tóm Tắt Nội Dung 7
Mục lục 8
Danh sách thuật toán 10
Danh sách hình vẽ 11
Danh sách bảng 12
Má Đầu 13
Chư¢ng 1 Giới Thiệu Bài Toán Tập Đỉnh Thống Trị Có Trọng Số Nhỏ Nhất 20 1.1 Bài toán tập đỉnh thống trị có trọng số cực tiểu và các bài toán liên quan 21 1.2 Các nghiên cāu liên quan 25
1.3 Các āng dụng liên quan đến bài toán tập đỉnh thống trị 31
1.4 Một số định lý quan trọng 34
1.4.1 Đinh lý Cook-levin 34
1.4.2 Định lý không có bữa trưa miễn phí 35
Chư¢ng 2 Thuật toán kết hợp tìm kiếm với số lượng hàng xóm lớn 36
2.1 Thuật toán HLNS 36
2.2 Thuật toán khái tạo cho tập đỉnh thống trị 37
2.3 Các thuật toán xóa các đỉnh trong tập đỉnh thống trị 38
2.4 Các thuật toán sửa tập đỉnh 38
2.5 Các thuật toán xóa bỏ đỉnh dư thừa trong tập đỉnh thống trị 39
Chư¢ng 3 Thực nghiệm 41
2.1 Giới thiệu thực nghiệm 41
2.2 Kết quả thực nghiệm 42
2.2.1 Thực nghiệm trên TH1 42
2.2.2 Thực nghiệm trên TH2 44
Trang 9Chư¢ng 4 Āng dụng chọn ngưßi điều hành cho nhóm moderator-selector 46
4.1 Giới thiệu āng dụng chọn ngưßi điều hành cho nhóm moderator-selector 46
4.2 Cách sử dụng āng dụng 48
Kết Luận Và Thảo Luận 52
Tài liệu tham khảo 53
Trang 10Danh sách thu Át toán
Thuật Toán 1: Tìm kiếm với số lượng hàng xóm lớn - LNS 18
Thuật Toán 2: Thÿ tục tham lam thích nghi ngẫu nhiên GRASP 19
Thuật Toán 3: Thuật toán HLNS 37
Thuật Toán 4: Thuật toán khái tạo tập đỉnh 38
Thuật Toán 5: Thuật toán xóa đỉnh DEL 38
Thuật Toán 6: Thuật toán thêm đỉnh REPAIR 39
Thuật Toán 7: Thuật toán DEL-REDUNDANT 40
Trang 12Danh sách b Áng
Bảng 1: Tham số cấu hình cho HLNS 41 Bảng 2: Kết quả thực nghiệm trên TH1 43 Bảng 3: Kết quả thực nghiệm trên TH2 44
Trang 13M ở Đầu
Một lượng lớn các liên kết tồn tại trong thế giới hiện nay đã kết nối hầu hết mọi thā lại với nhau, và phát triển dần về số lượng tạo ra một số lượng khổng lồ các mạng lưới
Các mạng lưới được tạo ra từ các tổ chāc xã hội được hình thành á trong hầu hết các n¢i mà con ngưßi đang sinh sống Với một xã hội hiện đại như ngày nay, trẻ con đến trưßng tham vào các tổ chāc trong trưßng học Ngưßi lớn đi làm và tham gia vào rất nhiều tổ chāc và mạng lưới trong xã hội như: hệ thống
tổ chāc lao động, hệ thống bảo hiểm xã hội, … Ngưßi già thưßng ít tham gia vào các tổ chāc h¢n, hầu hết trong số đó là các tổ chāc về hưu trí và hội những ngưßi bạn già Các tổ chāc này thưßng được hình thành một cách tự nhiên từ các nhu cầu cần thiết cÿa cuộc sống, hình thành các mạng lưới với đầy đÿ kích
cỡ khác nhau
Các mạng lưới được tạo thành từ dựa trên các hệ thống khổng lồ như mạng điện, mạng INTERNET, và mạng viễn thông Các mạng lưới này được phát triển mạnh mẽ trong thßi kỳ kỷ nguyên cÿa kỹ thuật số và trí tuệ nhân tạo Hiện nay, các mạng điện cung cấp đÿ điện cho hàng tỷ ngưßi dùng á khắp n¢i trên thế giới với kết cấu rất linh hoạt và phong phú phụ thuộc vào địa hình Tiếp theo, các mạng xã hội nổi tiếng như Twitter, Wechat, QQ, Facebook, với số lượng ngưßi dùng từ vài trăm triệu đến tỷ ngưßi dùng Trên các mạng này, mọi ngưßi được sử dụng rất nhiều tiện ích như nhắn tin, trò chuyện trực tiếp, ch¢i trò ch¢i cùng nhau Cuối cùng, các mạng viễn thông hiện nay được phÿ song hầu như toàn bộ các n¢i tập trung đông đảo con ngưßi sinh sống, cho phép hàng triệu ngưßi dùng giao tiếp với nhau trong một khoảng rộng lớn một cách linh hoạt không bị gò bó như các mạng lưới cố định
Các mạng cảm biến được hình thành để thu thập các thông tin cần thiết phục vụ cho các āng dụng thực tiễn Các mạng lưới cảm biến được sử dụng rất nhiều trong thực tế và trong cuộc sống vạn vật kết nối như ngày nay Đầu tiên, các āng dụng về nhà á thông minh cần đến hàng trăm cảm biến để thu thập các thông tin về môi trưßng, sāc khỏe, các tiện ích giải trí, và các công cụ hỗ trợ Bên cạnh đó, các āng dụng về phư¢ng tiện đi lại như ô tô, máy bay, tàu vũ trụ cần rất nhiều các cảm biến với đầy đÿ các loại kể cả tối tân nhất hiện nay Thêm vào nữa, các āng dụng bảo vệ môi trưßng cũng cần rất nhiều các cảm biến đến
có thể theo dõi chính xác tình hình môi trưßng hiện nay, giúp các nhà điều hành
Trang 14và ngưßi có trách nhiệm, cũng như toàn bộ dân cư āng phó kịp thßi với các điều kiện môi trưßng thay đổi thất thưßng phāc tạp như ngày nay Cuối cùng, các āng dụng liên quan đến hàng không vũ trụ đang được quan tâm nhất với các thiết bị chÿ yếu gồm các tổ hợp, mạng lưới phāc tạp giúp con ngưßi khám phá
đó chÿ yếu là các sinh viên đại học Các tiện ích bạn đầu chÿ yếu là nhắn tin và chia sẽ ảnh cá nhân qua mạng Khoảng chục năm về sau, mạng xã hội này đã phát triển lên đến vài trăm triệu ngưßi dùng với rất nhiều tiện ích và có tới cả trăm ngàn gian hàng trên mạng xã hội nay Cho đến bây giß, hầu hết những ngưßi dùng INTERNET hiện đại đều biết đến mạng xã hội Facebook với h¢n tỷ ngưßi dùng á khắp mọi ngưßi trên thế giới với đÿ các thành phần từ ngưßi dân bình thưßng, doanh nhân cho đến các ngưßi nổi tiếng
Phân tích các mạng lưới sẽ giúp con ngưßi khai thác hiệu quả chúng Việc tìm hiểu về một mạng lưới sẽ giúp con ngưßi hiểu rõ h¢n các tính chất cÿa một mạng lưới, các thành phần liên quan và sự phát triển cÿa mạng lưới đó Từ đó,
họ sẽ đưa ra các quyết định vào mạng lưới đó để thu được hiệu quả lớn nhất cho chính họ Chẳng hạn, việc triển khai INTERNET trên một phạm vi địa lý cần tìm hiểu về sự phân bố dân cư, tính chất địa lý cÿa vùng miền, yếu tố sử dụng cÿa ngưßi dụng để có thể quyết định đặt các thiết bị á các vị trí hợp lý giúp giảm thiểu công sāc chi phí, thßi gian triển khai mạng cũng như làm giảm chi phí bảo trì mạng này
Phân tích và khai thác các mạng lưới hiệu quả luôn tạo ra các giá trị to lớn cho ngưßi sử dụng, đặc biệt trong kỷ nguyên cÿa vạn vật kết nối (IOT) Một trong những yếu tố được quan tâm là tập các nốt ảnh hưáng đến toàn bộ mạng lưới, và bài toán được quan tâm gần đây là bài toán tìm tập đỉnh thống trị có trọng số nhỏ nhất
Phân tích mạng lưới để khai thác và phát triển mạng lưới, giúp các hệ thống nên mạnh mẽ, hoạt động tốt h¢n, nhiều tính năng h¢n, giúp ngưßi dùng và nhà quản lý mạng có thêm nhiều lợi ích Các mạng lưới phân tích bao gồm: mạng xã hội, mạng di động, mạng cảm biến, mạng lưới tổ chāc xã hội Việc
Trang 15khai thác từ các mạng này chÿ yếu khai thác tăng kích thước hệ thống, kích thích ngưßi dùng tham gia vào hệ thống, kích thích ngưßi dùng sử dụng dịch vụ trên mạng, kéo dài tuổi thọ cÿa mạng, giảm thiểu chi phí vận hành và bảo trì, và quản lý hệ thống
Phân tích mạng xã hội và các tổ chāc xã hội liên quan đến các bài toán quản lý mạng xã hội, nguồn thông tin lan truyền trên mạng xã hội, bài toán về quảng cáo trên mạng xã hội Việc phân tích mạng xã hội, giúp cho nhà phát hành sử dụng thông tin từ mạng xã hội hiệu quả để triển khai các dịch vụ và giảm thiểu chi phí vận hành hệ thống Ngưßi dùng sử dụng các dịch vụ như quảng cáo trên mạng xã hội, tìm kiếm bạn bè, tạo dựng hình ảnh trên mạng xã hội, mạng lại lợi ích lớn h¢n cho họ Các tổ chāc xã hội tốt h¢n khi chọn lựa được các nhà quản lý hiệu quả phù hợp và tối ưu Ví dụ: ngưßi dùng mạng xã hội Youtube thưßng hay xem những quảng cáo bao cao su DUREX á trên trong các nhóm youtuber nổi tiếng, và thưßng chia sẻ nó với những ngưßi bạn cÿa họ thông qua các mạng xã hội khác như Facebook, Zalo
Bài toán tìm tập đỉnh thống trị có trọng số nhỏ nhất trên mạng lưới được
áp dụng để khai thác các yếu tố về việc tìm ra tập các thành phần có khả năng chi phối toàn bộ các thành phần còn lại trong mạng Đó là được áp dụng cho đồ thị vô hướng để tìm ra một tập đỉnh chính có tổng trọng số nhỏ nhất sao cho các đỉnh không thuộc đã chọn kề với tập đỉnh đã chọn
Việc tìm ra tập đỉnh này giúp việc phân tích thiết kế trên mạng hiệu quả h¢n, do thông thưßng các tác động lên đồ thị sẽ ảnh hưáng chÿ yếu bái tập đỉnh chính Tại mỗi thành viên trong tập đỉnh chính, ngưßi dùng có thể tập trung dùng chúng để quản lý chi phối, hoặc xử lý các tác vụ nặng Điều này giúp giảm thiểu các công việc phải làm trên toàn bộ hệ thống vì chỉ cần tập trung vào một tập đỉnh chính là một bộ phận cÿa mạng Có rất nhiều nghiên cāu āng dụng về tập đỉnh trị đã được công bố về các āng dụng liên quan đến mạng xã hội, mạng
di động, và mạng cảm biến, … Tuy rằng, các nghiên cāu về tập đỉnh thống trị có trọng số nhỏ nhất rất lâu nhưng hoàn toàn có giá trị trong kỷ nguyên cÿa kết nối vạn vật với một lượng dữ liệu khổng lồ được lưu chuyển và xử lý
Trong gần 20 năm gần đây, đã có rất nhiều nghiên cāu cho bài toán này
Do bài toán được chāng minh thuộc lớp bài toán NP-hard nên cho đến thßi điểm nay vẫn chưa có một thuật toán hiệu quả để xử lý bài toán với kết quả chính xác trong thßi gian đa thāc Các thuật toán chính xác hiện nay có độ phāc tạp tính toán theo hàm mũ, nên chỉ mang tính lý thuyết mà chưa thể áp dụng trong thực
Trang 16tế Các nghiên cāu này gồm các thuật toán chính xác cho tập đỉnh thống trị cÿa Fomin, Van Rooij dựa trên thuật toán nhánh và rút gọn [8][23] Các thuật toán khả dụng hiện nay cho bài toán này là các thuật toán metaheuristic với các phư¢ng pháp kinh điển gồm tối ưu đàn kiến, giải thuật di truyền, tối ưu bầy đàn, các thuật toán memetic, các thuật toán tìm kiếm địa phư¢ng, và thuật toán matheuristic
Các thuật toán matheuristic có ưu điểm là đưa ra lßi giải đÿ tốt trong một thßi gian hợp lý so với các thuật toán tham lam hoặc các thuật toán ngẫu nhiên Các công trình nghiên cāu bao gồm: áp dụng thuật toán tối ưu đàn kiến để tìm tập đỉnh thống trị [17] [19], áp dụng thuật toán di truyền để tìm các tập thống trị [17], áp dụng thuật toán bầy đàn để tìm tập đỉnh thống trị [13], áp dụng các thuật toán memetic để tìm tập đỉnh thống trị [14], áp dụng thuật toán tìm kiếm địa phư¢ng với kỹ thuật cấu hình kiểm thử dựa trên các hàm điểm tần suất [26], các nghiên cāu lên quan đến matheuristic như kết hợp các thuật toán tham lam với quy hoạch nguyên và việc kết hợp tìm kiếm tabu với quy hoạch nguyên [1] [2]
Các thuật toán bầy đàn thì dựa vào số lượng cá thể và phư¢ng pháp phát triển quần thể nên thưßng chạy khá chậm hoặc là chúng bị tăng một lượng chi phí về thßi gian do kết hợp với cả các thuật toán tìm kiếm địa phư¢ng để cải thiện kết quả Các thuật toán matheuristic là sự kết hợp với các thuật toán metaheuristic với quy hoạch nguyên Trong các phư¢ng pháp matheuristic được
đề xuất hiện này thì có hai chiến lược được đề ra là có gắng khái tạo lßi giải tốt
và sử dụng quy hoạch nguyên để tiếp tục tìm kiếm lßi giải hoặc hạn chế không gian tìm kiếm để đưa ra bài toán rút gọn sau đó dùng quy hoạch nguyên để giải quyết
Điều kiện kết thúc cÿa các thuật toán trên thưßng dựa trên số lần lặp hoặc giới hạn thßi gian chạy và các tham số này được ngưßi dùng đưa ra do quá trình thực nghiệm Các kết quả thực nghiệm đưa ra đã cho thấy hiện nay các thuật toán tìm kiếm địa phư¢ng hoặc các thuật toán tabu kết hợp quy hoạch nguyên là tốt nhất trong số tất cả các thuật toán đã được áp dụng để tìm tập đỉnh thống trị Ngoài ra, các thuật toán tìm kiếm địa phư¢ng còn được áp dụng cho các tập dữ liệu lớn [12] [2]
Các thuật toán tìm kiếm địa phư¢ng hoạt động khá tốt tuy nhiên còn rất nhiều điểm hạn chế về chất lượng như kết quả thực nghiệm trên bộ dữ liệu BHOSLIB và bộ dữ liệu DIMACS trong thực nghiệm Các nghiên cāu việc áp dụng các phư¢ng pháp khác thì có chất lượng lßi giải hạn chế hoặc thßi gian
Trang 17gian chạy khá chậm Các hạn chế này có thể được khắc phục bái thuật toán tìm kiếm với số lượng hàng xóm lớn (LNS) Bên cạnh đó, để hạn chế bớt các đỉnh kém chất lượng, thuật toán GRASP được sử dụng để làm giải quyết vấn đề này
Tìm kiếm với số lượng hàng xóm lớn là thuật toán sử dụng số lượng lớn các āng viên trong một vùng rộng lớn h¢n các thuật toán tìm kiếm địa phư¢ng
đã biết trước đó Thuật toán được đề xuất lần đầu tiên bái L.Shaw, và đã được
áp dụng hiệu quả để giải quyết bài toán định tuyến giao thông [20] Ý tưáng cÿa thuật toán là lựa chon các āng viên có khoảng cách lớn trong không gian tìm kiếm so với āng viên hiện tại (thuật toán (1))
Thuật toán LNS sử dụng hai phép toán là DEL (phép xóa) và REPAIR (phép sửa) để tìm kiếm lßi giải có chất lượng tốt, trong đó để tạo ra āng viên mới S+ sẽ được tạo ra từ lßi giải hiện tại S Nếu S+ được chấp nhận bái
ACCEPT(S, S+), thuật toán sẽ tiếp tục tiến hành xét duyệt tại āng viên S+ Phép toán DEL sẽ xóa đi một phần trong lßi giải S để tạo S− Do việc loại bỏ một phần lßi giải nên S− thưßng vi phạm các điều kiện đặt ra Do vậy, để tạo ra āng viên mới chấp nhận được phép toán REPAIR sẽ thêm vào một số thành viên vào
S − để tạo āng viên S+ Do hai phép toán DEL và REPAIR bớt và thêm một phần
cÿa lßi giải S nên S+ và S có sự sai khác khá lớn Số lượng āng viên mới có thể được tạo ra từ S là nhiều h¢n rất nhiều so với các thuật toán tìm kiếm địa phư¢ng trước đây
Các phép toán DEL và REPAIR rất đa dạng và phong phú phụ thuộc vào từng loại bài toán khác nhau và do ngưßi dùng lựa chọn Các thuật toán này kết hợp với nhau để tạo nên một thuật toán hiệu quả Ví dụ, việc lựa chọn phần tử
để loại bỏ trong một lßi giải S có thể tuân theo phân bố chuẩn, hoặc phân bố đều Việc kết hợp sử dụng các phép toán này sẽ làm tăng độ hiệu quả cÿa thuật toán và phư¢ng pháp thích nghi tìm kiếm với số lượng hàng xóm lớn được đề xuất Phư¢ng pháp này dựa vào việc gán trọng số cho mỗi thuật toán và cập nhập các trọng số này sau mỗi lần thực thi một phép toán nào đó [16]
Begin
Khái tạo lßi giải S;
S∗←S while ( chưa chạy hết thßi gian tìm kiếm ) do
S− ← DELETE(S); // hàm DELETE xóa một số thành phần trong lßi giải S
Trang 18S+ ← REPAIR(S−); // hàm REPAIR thêm một số đỉnh cho đến khi hợp lệ
if ACCEPT(S, S+) then // lßi giải S+ có được chấp nhận để xét tiếp không
S← S+; end-if
if (S+ tối ưu h¢n S∗ ) then
S∗ = S+
end-if end-while Đưa ra lßi giải S;
End;
Thuật Toán 1: Tìm kiếm với số lượng hàng xóm lớn - LNS
Thÿ tục GRASP được sử dụng lần đầu tiên để giải quyết bài toán tập phÿ [7] Đây là sự kết hợp khéo léo giữa các thuật toán tham lam, danh sách hạn chế
và sự lựa chọn ngẫu nhiên được trình bày trong thuật toán (2) Các hàm đánh giá
á trong thÿ tục đều là các hàm tham lam, và các ngưỡng để tuyển chọn āng viên đều do ngưßi dùng tự thiết lập Việc chọn tham số tối ưu thưßng là do ngưßi dùng sử dụng thực nghiệm Thuật toán này có ưu điểm là dễ cài đặt, độ phāc tạp thấp và cho chất lượng lßi giải vừa phải Thuật toán đã áp dụng để giải quyết bài toán tìm tập đỉnh thống trị trong thuật toán memetic được đề xuất bái Gen Ling [14]
Begin
S ← {};
while (S chưa là lßi giải hợp lệ) do
pi←{fval{xi} | xi+S}; // fval là hàm đánh giá giá trị cÿa xi
pmax ←maxp (p);
RCL ← {xi | pif ÿ ∗ ýÿ�㕎Ă}; // danh sách hạn chế RCL
xp ← lựa chọn ngẫu nhiên với phân bố đều từ danh sách RCL;
S ← S ∪ xp ;
Trang 19end-while;
Đưa ra lßi giải S;
End;
Thuật Toán 2: Thÿ tục tham lam thích nghi ngẫu nhiên GRASP
Thuật toán tạo danh sách RCL dựa trên māc ngưỡng tỉ lệ ÿ với giá trị đánh giá lớn nhất trên tập các āng viên X Giá trị ÿ nếu càng lớn thì kích thước cÿa RCL càng lớn và ngược lại càng bé Nếu RCL chỉ có 1 phần tử, thuật toán GRASP sẽ trá thành thuật toán tham lam Thông thưßng, giá trị ÿ được chọn vừa đÿ để giới hạn kích thước cÿa RCL và chọn những āng viên tiềm năng đê tạo ra các lßi giải có chất lượng tốt h¢n Bên cạnh đó, āng viên được thêm vào
sẽ được chọn ngẫu nhiên trong danh sách RCL, nên thuật toán có thể cho ra lßi giải khác nhau trên cùng một đầu vào Số lượng các lßi giải có thể tạo ra từ thuật toán này phụ thuộc vào giá trị ÿ
Từ đây, tôi đề xuất áp dụng thuật toán kết hợp tìm kiếm với số lượng hàng xóm lớn với GRASP cho bài toán tìm tập đỉnh thống trị có trọng số cực tiểu Việc kết hợp này được hình thành dựa vào việc áp dụng các chiến thuật xóa đỉnh khác nhau, và áp dụng GRASP cho phần khái tạo và thuật toán chỉnh sửa đỉnh
để tạo thành các tập đỉnh thống trị có chất lượng tốt Trong đó, các phần đóng góp gồm:
1 Đề xuất thuật toán tìm kiếm với số lượng hàng xóm lớn,
2 Chāng minh độ hiệu quả cÿa thuật toán so với các thuật toán khác bằng thực nghiệm,
3 Áp dụng cho āng dụng chọn ngưßi điều hành nhóm selector
moderators-Luận văn được tổ chāc thành 4 chư¢ng ngoại trừ phần kết luận Chư¢ng 1 giới thiệu vấn đề, các nghiên cāu, āng dụng liên quan, và một số định lý quan trọng trong lý thuyết về độ phāc tạp tính toán Chư¢ng 2 trình bày về thuật toán kết hợp tìm kiếm với số lượng hàng xóm lớn HLNS cho bài toán tìm tập đỉnh thống trị có trọng số cực tiểu, thuật toán cho lßi giải khá tốt Chư¢ng 3 đưa ra kết quả thực nghiệm cÿa thuật toán trên 2 bộ dữ liệu BHOSLIB và DIMACS với các phân tích so sánh nhận xét đánh giá so với cá thuật toán đã có Chư¢ng 4 trình bày về áp dụng thuật toán tìm tập đỉnh thống trị vào trong āng dụng chọn ngưßi điều hành trong nhóm trên mạng xã hội
Trang 20Ch°¢ng 1 Gißi Thiáu Bài Toán TÁp Đãnh Thëng Trå Có Trçng Së
2 Trình bày về các nghiên cāu về phư¢ng pháp giải cāu bài toán MWDS,
3 Trình bày các āng dụng liên quan đến tập đỉnh thống trị,
4 Trình bày một số định lý quan trọng trong lý thuyết về độ phāc tạp tính toán:
a) Định lý Cook-Levin,
b) Định lý về không có bữa trưa miễn phí (no free-lunch theorem)
Trang 211.1 Bài toán tÁp đãnh thëng trå có trçng së cực tiểu và các bài toán liên quan
Trên một đồ thị vô hướng G = (V, E), một tập đỉnh S ⊆ V là tập đỉnh
thống trị, nếu bất kỳ đỉnh v * V và v + S, ∃ đỉnh u * S là đỉnh kề với đỉnh v Trên một đồ thị vô hướng G bất kỳ luôn tồn tại ít nhất một tập đỉnh thống trị Các vấn đề liên quan đến tập đỉnh thống trị gồm:
1 Tìm tập đỉnh thống trị có số lượng nhỏ nhất - MDS (minimum dominating set),
2 Tìm tập đỉnh thống trị liên thông nhỏ nhất - MCDS (minimum connected dominating set),
3 Tìm tập đỉnh thống trị độc lập nhỏ nhất - MIDS (minimum independent dominating set),
4 Tìm tập đỉnh thống trị S với việc mỗi đỉnh v + S, ∃ đỉnh u * S, sao cho
tồn tại đưßng đi giữa hai đỉnh không quá k cạnh - MkDS (minimum dominating set),
k-5 Tìm tập đỉnh thống trị có trọng số nhỏ nhất - MWDS (minimum dominating set)
Với đồ thị vô hướng G = (V, E), ta gọi C là ma trận kề biểu diễn các cạnh cÿa đồ thị, trong đó: mỗi phần tử Cij = 1 biểu thị có cạnh kết nối giữa đỉnh i và
đỉnh j, C ij = 0 biểu thị không có cạnh kết nối giữa đỉnh i và đỉnh j Vec t¢ W là vec t¢ trọng số, trong đó w(i) là giá trị cÿa thành phần thā i cÿa W, biểu diễn
trọng số cÿa đỉnh i Mỗi một tập đỉnh D ⊆ V được biểu diễn bái một vec t¢ nhị phân x, trong đó x(i) là giá cÿa thành phần thā i và nhận giá trị 0 hoặc 1 biểu thị đỉnh đó được chọn đỉnh thống trị hay không Một tập đỉnh S ⊆ V với biểu diễn x
là tập đỉnh thống trị nếu thỏa mãn điều kiện (1.1)
∑�㕛Ā=1�㔶ÿĀ × ĂĀ + Ăÿ g 1, ∀ÿ = 1, Ā (1.1)
Từ đây, các bài toán MDS, MCDS, MIDS, MkDS, MWDS được mô hình hóa mô hình hóa toán học như sau:
1 bài toán tìm tập đỉnh thống trị có kích thước nhỏ nhất (MDS) được
mô hình hóa theo công thāc (1.2)
ÿÿĀ�㕥∑ Ăÿ
�㕛 ÿ=1
Trang 22ý þ: ∑ �㔶ÿĀ
�㕛 Ā=1
∗ ĂĀ + Ăÿ g 1, ∀ÿ = 1, Ā (1.2)
2 bài toán tìm tập đỉnh thống trị liên thông có kích thước nhỏ nhất (MCDS) được mô hình hóa theo công thước (1.3)
ÿÿĀ�㕥∑ Ăÿ
�㕛 ÿ=1
ý þ: ∑ �㔶ÿĀ ∗ ĂĀ + Ăÿ g 1, ∀= 1, Ā
�㕛 Ā=1
ý þ: ∑ �㔶ÿĀ ∗ ĂĀ + Ăÿ g 1, ∀ÿ = 1, Ā
�㕛 Ā=1
Āếÿ Ăÿ + ĂĀ = 2, þ/ì �㔶ÿĀ = 0 (1.4)
4 bài toán tìm tập đỉnh thống trị có kích thước nhỏ nhất (MkDS) được
mô hình hóa theo công thāc (1.5)
ÿÿĀ�㕥∑ Ăÿ
�㕛 ÿ=1
Trang 23ý þ: ∑ �㔶ÿĀ ∗ ĂĀ + Ăÿ g 1, ∀ÿ = 1, Ā
�㕛 Ā=1
Āếÿ Ăÿ + ĂĀ = 2, ýó đườĀĀ đÿ Āÿữ�㕎 ÿ Āà Ā ā/ôĀĀ þÿá ā đỉĀ/ (1.5)
5 bài toán tìm tập đỉnh thống trị có trọng số nhỏ nhất (MWDS) được
mô hình hóa theo công thāc (1.6)
ÿÿĀ�㕥∑ āÿĂÿ
�㕛 ÿ=1
ý þ: ∑ �㔶ÿĀ
�㕛 Ā=1
∗ ĂĀ + Ăÿ g 1, ∀ÿ = 1, Ā (1.6)
Tất cả các bài toán trên đều được chāng minh là bài toán NP-Hard Việc chāng minh này dựa vào phép rút gọn xấp xỉ L-approximation giữa các bài toán tập đỉnh thống trị và tập phÿ [3][5] Do bài toán tập phÿ (set covering) là một trong 21 bài toán được chāng minh thuộc lớp NP-Hard bái R.Karp [9], nên các bài toán liên quan đến tập đỉnh thống trị đều là NP-Hard
Sau đây là phép rút gọn xấp xỉ L-reduction giữa bài toán tập đỉnh thống trị nhỏ nhất và tập phÿ nhỏ nhất Từ bài toán tập phÿ sang tập đỉnh thống trị: với
bài toán p = (S, U), trong đó: U = u1, , u m là tập chāa toàn bộ các thành phần
c¢ bản, S = S1, S2, , S n là tập các tập đỉnh thỏa mãn S ⊆ U Cho I là tập hợp các
chỉ mục cÿa S, tại đây đồ thị G = (E, V) được xây dựng trong đó E = U ∪ I là tập các đỉnh cÿa G, V được biểu diễn bằng ma trận kề trong đó các đỉnh thuộc I tạo thành một đồ thị đầy đÿ, các đỉnh thuộc U là các đỉnh độc lập lẫn nhau (tāc là:
C Ii, Ij = 1, ∀I i , I j * I , C ui, uj = 0, và C Ii, uk = 1 ∀u k * S i)
1 Nếu tồn tại một tập phÿ P ∪ S, thì tồn tại tập đỉnh thống trị tư¢ng āng là tập con cÿa I trên G Ví dụ: bài toán p = (S, U), trong đó: U =
u1, u2, u3, u4, u5, S = S1, S2, S3 với S1 = u1, u2, S2 = u1, u3, u4, S3 = u4,
u5 Đồ thị G = (V, E) được xây dựng gồm V = I1, I2, I3, u1, u2, u3, u4,
Trang 24u5 E = (I1, I2), (I2, I3), (I3, I1), (I1, u1), (I1, u2), (I2, u1), (I2, u3), (I2, u4), (I3, u4), (I3, u5) (xem hình vẽ (1)) Tại đây, tồn tại duy nhất một tập phÿ P = S1, S2, S3, và trên đồ thị G ta có tập đỉnh thống trị tư¢ng āng
là D = I1, I2, I3,
2 Từ bài toán tập đỉnh thống trị sang tập phÿ: với đồ thị G = (V, E) (V
= v1, v2, , v n), ta xây dựng bài toán tập phÿ với U = V, S = S1, S2 , , S n, với Si là tập hợp cÿa vi với các đỉnh kề nó Với mỗi tập phÿ D trên đồ thị G ta có tập phÿ P trên đồ tập S tư¢ng āng Ví dụ: đồ thị
G = (V, E) (V = v1, v2, v3, v4, v5, E = (v1, v2), (v1, v3), (v2, v4), (v2, v5), (v3, v4), (v3, v5)), ta có tập đỉnh thống trị D = (v2, v3) tư¢ng āng với tập phÿ P = (S2, S3) (xem hình vẽ 2)
Hình 1: Đồ thị chuyển đổi giữa bài toán SC và bài toán MDS
Hình 2: Đồ thị chuyển đổi từ bài toán tập MDS sang bài toán SC
Các bài toán MDS, MCDS, MIDS, MkDS, MWDS là các bài toán thuộc lớp bài toán NP-hard Lßi giải cÿa một trong bài toán trên có thể được áp dụng
5 4
3 2
Trang 25lại cho nhau với một số thay đổi nhất định Chẳng hạn, lßi giải cÿa vấn đề MDS
có thể được áp dụng cho lßi giải cÿa MCDS với việc thêm rằng buộc liên thông vào trong thuật toán lßi giải cÿa bài toán MWDS có thể áp dụng được trực tiếp cho bài toán MDS với việc đặt trọng số mỗi đỉnh bằng 1 Do mối quan hệ mật thiết giữa các bài toán này, luận văn trình bày phư¢ng pháp để giải quyết cho vấn đề MWDS là bài toán tổng quát nhất trong số các bài toán trên
Bài toán tập đỉnh thống trị là một trong những bài toán chưa có lßi giải chính xác trong thßi gian đa thāc trên những thiết bị phần cāng hiên nay Do
độ phāc tạp tính toán hiện nay cho các bài toán dạng này là độ phāc tạp theo hàm mũ nên cộng đồng nghiên cāu āng dụng thưßng ưu thích sử dụng các phư¢ng pháp metaheuristic với độ tốt cÿa lßi giải tỷ lệ với thßi gian thực thi cÿa thuật toán Do vậy, trong khoảng thßi gian vừa đÿ, chất lượng cÿa lßi giải thưßng sai khác so với lßi giải chính xác một lượng chấp nhận được tùy vào từng yêu cầu cÿa các āng dụng trong thực tế Các phư¢ng pháp metaheuristic chÿ yếu dành cho lớp bài toán này thưßng là:
1 giải thuật di truyền (GA) [17],
2 phư¢ng pháp tối ưu đàn kiến (ACO) [17][19],
3 phư¢ng pháp tối ưu bầy đàn (PSO) [13],
4 phư¢ng pháp memetic (MA) [14],
5 tìm kiếm địa phư¢ng (LS) [1][26],
6 tìm kiếm với số lượng hàng xóm lớn (LNS)[14]
Các phư¢ng pháp trên là những phư¢ng pháp kinh điển để giải quyết lớp bài toán NP-Hard được nghiên cāu và sử dụng trong gần 50 năm cÿa ngành khoa học máy tính Các phư¢ng pháp trên đều mô phỏng lại các hiện tượng tự nhiên như thuật toán di truyền lấy cảm hướng từ việc giao phối giữa các cá thể trong loài với nhau, phư¢ng pháp tối ưu đàn kiến lấy cảm hāng từ việc kiếm mồi cÿa đàn kiến, phư¢ng pháp tối ưu bầy đàn lấy cảm hāng từ việc kiếm mồi cÿa đàn chim trong tự nhiên Các phư¢ng pháp này đều sử dụng lại kinh nghiệm thu được từ lần khám phá trước để đưa ra lßi giải tiếp theo
Các kinh nghiệm này đến từ kinh nghiệm ngưßi dùng hoặc là các lßi giải từ các lần khám phá ngẫu nhiên trong không gian tìm kiếm Ngoài ra, một hướng nghiên cāu mới matheuristic gần đây kết hợp giữa phư¢ng pháp metaheuristic với quy hoạch nguyên (IP) để đưa ra lßi giải với chất lượng tốt trong thßi gian hợp lý cũng đã thu được một số thành tựu đáng kể
Trang 26Trong khoảng 20 năm nghiên cāu về tập đỉnh thống trị, các phư¢ng pháp đã
có rất nhiều công trình nghiên cāu về tập đỉnh thống trị và āng dụng cÿa nó, dưới đây là một số phư¢ng pháp được đề xuất cho bài toán tìm tập đỉnh thống trị có trọng số nhỏ nhất:
1 Một thuật toán tối ưu hóa đàn kiến cho MWDS [19],
2 Các thuật toán kết hợp phư¢ng pháp metaheuristic cho MWDS [17],
3 Một kết hợp các mô hình thuật toán cho MWDS [2],
4 Một thuật toán kết hợp memetic hiệu quả cho bài toán tìm MWDS [14],
5 Tìm kiếm địa phư¢ng cho bài toán tìm MWDS với hai māc kiểm tra cấu hình và hàm điểm dựa vào tần suất [26],
6 Một thuật tìm kiếm địa phư¢ng hiệu quả cho MWDS trên đồ thị khổng
lồ [27],
7 Một thuật toán matheuristic hiệu quả cho MWDS [1],
8 Một thuật toán tìm kiếm bầy đàn nhị phân cho MWDS [13]
Vào năm 2010, phư¢ng pháp tối ưu đàn kiến được đề xuất cho bài toán tìm tập đỉnh thống trị (RAKA-ACO) Phiên bản được tối ưu đàn kiến được sử dụng á trong công bố này là MMAS Không gian duyệt được tạo thành là các đỉnh cÿa đồ thị, do vậy vết mùi sẽ được lưu trên đỉnh thay vì đặt tại cách cạnh Hàm heuristic được sử dụng là tỉ lệ giữa tổng trọng số cÿa đỉnh tự do kề với một đỉnh và trọng số cÿa đỉnh đó Công thāc cập nhật mùi toàn cục không có
gì thay đổi so với phiên bản gốc, và việc cập nhật phụ thuộc vào con kiến tìm
ra hành trình tốt nhất và lượng thay đổi tỷ lệ nghịch với giá trị độ dài cÿa hành trình đó Thuật toán không sử dụng thêm các hàm tìm kiếm địa phư¢ng để cải thiện lßi giải
Thuật toán đã được thực nghiệp trên hai bộ dữ liệu nhân tạo, và so sánh với hai thuật toán heuristic c¢ bản Kết quả thu được chỉ ra rằng thuật toán tối ưu đàn kiến có chất lượng lßi giải tốt h¢n 10% đến 20% so với hai thuật toán kia,
vì trong các thực nghiệm các thụât toán metaheuristic thưßng tốt h¢n các thuật toán heuristic Tuy nhiên, so với các thuật toán gần đây thì chất lượng cÿa thuật toán rất kém so với những công bố gần đây Bên cạnh đó, thßi gian thực thi là một vấn đề lớn đối với thuật toán này vì sử dụng bầy đàn để dò tìm và cập nhật lßi giải [19]
Năm 2013, việc áp dụng giải thuật di truyền cho bài toán MWDS được đề xuất (HGA) Bên cạnh đó, thuật toán ACO-LS được xuất dựa trến tối ưu đàn
Trang 27kiến việc thay đổi công thāc cập nhật mùi, kết hợp với tìm kiếm địa phư¢ng Thuật toán ACO-PP-LS là giống với thuật toán ACO-LS chỉ khác nhau á phần khái tạo Thuật toán HGA sử dụng theo phư¢ng thāc nguyên mẫu so với phiên bản gốc [17] Thuật toán sử dụng các hàm heuristic dựa vào trạng thái cÿa các đỉnh hiện tại trong đồ thị để xây dựng tập đỉnh thống trị Mỗi một đỉnh trong
đồ thị sẽ có thể á một trong ba trạng thái sau: đỉnh thống trị, đỉnh bị thống trị, đỉnh tự do Trong đó, đỉnh thống trị là đỉnh được thêm vào tập đỉnh để tập đỉnh
đó thành tập đỉnh thống trị, đỉnh bị trị là đỉnh kề với ít nhất một đỉnh thống trị,
và đỉnh tự do là đỉnh không có kề với bất cā một đỉnh thống trị nào Từ đó, 4 hàm heuristic được đề xuất để lựa chọn đỉnh sẽ được lựa chọn làm đỉnh thống trị:
1 Tỉ lệ giữa số lượng các đỉnh tự do liên quan đến một đỉnh và trọng số cÿa đỉnh đó (1.7) với S là danh sách các đỉnh có khả năng được chọn, d(u) là số lượng đỉnh cÿa các đỉnh tự do liên quan đến u và w(u) là trọng số cÿa u,
þ1(ÿ) = ÿ�㕎ĂĂ*�㕆þ(ÿ)
ā(ÿ) (1.7)
2 Tỉ lệ giữa tổng trọng số cÿa các đỉnh tự do liên quan đến một đỉnh
và trọng số cÿa đỉnh đó với S là danh sách các đỉnh có khả năng được chọn, W(u) là tổng trọng số cÿa các đỉnh tự do liên quan đến
u, và w(u) là tổng số cÿa đỉnh u,
þ2(ÿ) = ÿ�㕎ĂĂ*�㕆�㕊(ÿ)ā(ÿ) (1.8)
3 Hiệu giữa tổng trọng số cÿa các đỉnh tự do liên quan đến một đỉnh
và trọng số cÿa đỉnh đó (1.9) Với S là danh sách các đỉnh có khả năng được chọn, W(u) là tổng trọng số cÿa các đỉnh tự do liên quan đến u, và w(u) là tổng trọng số cÿa u,
Trang 28là tổng số đỉnh tự do liên quan đến u, W(u) là tổng trọng số cÿa các đỉnh tự do liên quan đến u, w(u) là trọng số cÿa đỉnh u
ÿ�㕎ĂĂ*�㕆þ(ÿ)�㕊(ÿ)ā(ÿ) (1.10) Thuật toán HGA sử dụng giải thuật di truyền theo phư¢ng thāc truyền thống với điểm khác là chỉ có một cặp cha mẹ được lựa chọn ngẫu nhiên tạo ra
cá thể mới tại mỗi lần lặp Toán tử tư¢ng giao chéo là phần chung giữa bố và
mẹ và có thêm phần đột biến gen và kết hợp với toán tử chỉnh sửa là 1 trong 4 hàm heursitic trên để cho cá thể được tạo ra là hợp lệ Thuật toán sử dụng tìm kiếm địa phư¢ng là thuật toán loại bỏ các thành phần dư thừa để làm tối ưu giá trị cÿa các thể vừa mới được tạo ra Việc cập nhật quần thể không có gì thay đổi so các thuật toán di truyền khác
Bên cạnh đó, thuật toán ACO-LS là sự kết hợp giữa tối ưu đàn kiến phiên bản MMAS và tìm kiếm địa phư¢ng nhưng không sử dụng thông tin heuristic Lượng cập nhật mùi được thay đổi theo công thāc sau (1.11):
Ă = 5.0 + ÿ 2 ý2.0
Ā�㕒Āā (1.11) Trong đó, f là giá trị đạt được tốt nhất mà đàn kiến tìm được tại lần lặp hiện tại, Fbest là giá trị tốt nhất cho đến thßi điểm hiện tại mà đàn kiến đạt được
Các thành phần khác cÿa thuật toán không khác so với phiên bản gốc và thuật toán cũng không sử dụng thông tin heuristic Thuật toán ACO-PP-LS là ACO-LS nhưng sử dụng phần khái tạo vào trong phần khái tạo vết mùi tại các đỉnh Kết quả thực nghiệm đã chỉ ra cả ba thuật toán trên đều tốt h¢n cả về chất lượng và thßi gian so với thuật toán RAKA-ACO
Bên cạnh đó, các thuật toán này đều có chất lượng ngang nhau, nhưng các thuật toán dựa vào đàn kiến có thßi gian thực thi nhanh h¢n thuật toán dựa vào giải thuật di truyền khá nhiều Tuy nhiên, nếu so với các thuật toán hiện tại cả 3 thuật toán này đều có chất lượng kém h¢n nhiều so với các thuật toán công bố gần đây
Năm 2016, phư¢ng pháp kết hợp các mô hình thuật toán với nhau được đề xuất với việc kết hợp sử dụng quần thể, toán tử xóa và toán tử chỉnh sửa tham lam theo phân bố đều (R-PIG) Bên cạnh đó, thuật toán còn kết hợp thêm cả quy
Trang 29hoạch nguyên để cải thiện chất lượng lßi giải (Hyb-R-PIG) [2] Kết quả thực nghiệm cho thấy hai thuật toán này cho chất lượng kết quả tốt h¢n nhiều so với các thuật toán trước đây, nhưng vẫn kém so với các thuật toán gần đây Bên cạnh đó, thßi gian các thuật toán có thßi gian thực thi khá lâu do thuật toán R-PIG sử dụng quần thể Ngoài ra, với những bài toán cỡ lớn, việc kết hợp quy hoạch nguyên trá nên ít tác dụng h¢n do việc duyệt trong không gian lớn khá tốn thßi gian
Trong cùng năm đó, thuật toán memetic được đề xuất cho bài toán MWDS (HMA) với tốc độ thực thi nhanh h¢n 6 lần so với các thuật toán dựa vào tối ưu đàn kiến Thuật toán này kết hợp cÿa ba thành phần chính là thÿ tục xây dựng thích nghi ngẫu nhiên (GRACP), giải thuật di truyền, tìm kiếm địa phư¢ng sử dụng phư¢ng pháp phạt thích nghi [14] Phư¢ng pháp GRACP được
sử dụng cho việc khái tạo quần thể và trong phần giao phối giữa một cá thể cha
và cá thể mẹ Phư¢ng pháp này giúp tạo ra các lßi giải đÿ tốt cho các bước sau
Qua mỗi lần lặp, chỉ có một cặp cha mẹ được chọn ngẫu nhiên được sinh con để tiến hóa quần thể Tiếp theo đó, thuật toán tìm kiếm địa phư¢ng được sử dụng để cải thiện chất lượng cá thể con Việc sử dụng phư¢ng pháp hàm phạt thích nghi giúp cho chất lượng cÿa cá thể con tốt h¢n, cũng như việc hạn chế không gian tìm kiếm không có lợi Ngoài ra, phư¢ng pháp path relinking được
sử dụng để tăng khả năng thăm dò cÿa thuật toán Thÿ tục cập nhật quần thể sử dụng hàm liên quan đến sự khác biệt cÿa cá thể đó với quần thể và chất lượng cÿa cá thể đó Kết quả thực nghiệm đã chỉ ra thuật toán chạy khá nhanh so với các thuật toán trước đây với chất lượng tốt h¢n hẳn các thuật toán từ trước năm
2013
Năm 2017, thuật toán tìm kiếm địa phư¢ng sử dụng cấu hình kiếm tra với hàm điểm dựa trên tần số được sử dụng (CC2FS) [26] Thuật toán hoạt động khá hiệu quả với chất lượng tốt và thßi gian thực thi khá nhanh Thuật toán chÿ yếu gồm hai thao tác chính là xóa hai phần tử thuộc tập đỉnh thống trị và chỉnh sửa lại tập đang xét để thành tập đỉnh thống trị trá lại Thuật toán sử dụng hàm điểm
để lựa chọn phần tử bị xóa hoặc được thêm, nếu đỉnh đó thuộc tập đỉnh thống trị điểm cÿa nó sẽ bị âm, nếu đỉnh và các đỉnh liên quan đến nó bị thống trị điểm cÿa nó sẽ bằng 0, các trưßng hợp còn lại đỉnh đó có điểm dư¢ng
Việc sử dụng hàm điểm này thuận lợi á việc, nếu tập đỉnh đang là tập đỉnh thống trị, các đỉnh dư thừa sẽ bị loại bỏ ra khỏi đỉnh thống trị Nếu không, hai đỉnh thống trị sẽ bị loại bỏ phụ thuộc vào trọng số cÿa nó và tần suất cÿa các
Trang 30đỉnh liên quan đến nó Các đỉnh được thêm vào cũng như vậy Việc sử dụng tần suất các đỉnh mà chưa được sử dụng tại mỗi lần thêm đỉnh giúp khuyến khích các đỉnh liên quan đến đỉnh đó được lựa chọn giúp cho việc tìm kiếm tập trung vào những đỉnh giàu tiềm năng h¢n
Việc sử dụng cấu hình kiểm tra kết hợp với danh sách tabu góp phần làm giảm tính chu kỳ hay mắc phải cÿa các thuật toán tìm kiếm địa phư¢ng Cấu hình kiểm tra sẽ cấm không cho đỉnh vừa bị xóa được thêm vào, khuyến khích các đỉnh liên quan đến nó được chọn khiến cho nó ít có khả năng quay trá lại làm đỉnh thống trị Danh sách tabu sẽ cấm không cho các đỉnh vừa được thêm vào bị xóa đi Thực nghiệm đã chāng minh thuật toán chạy tốt với các bộ dữ liệu
đã dùng và việc đạt chất lượng vượt trội so với các thuật toán trước đây trong một thßi gian ngắn
Năm 2018, mô hình matheuristic được đề xuất là việc kết hợp thuật toán tìm kiếm địa phư¢ng sử dụng danh sách tabu với quy hoạch nguyên (HTS-DS) [1] Điểm nổi bật cÿa thuật toán là sử dụng hàm phạt theo giá trị cÿa tập đỉnh hiện tại vào số lượng cÿa các đỉnh chưa bị thống trị Hàm phạt á trên cho phép duyệt bài toán trong vùng không gian không hợp lệ, giúp loại bỏ các ràng buộc cÿa tập đỉnh thống trị Tại mỗi bước lặp, ba toán tử được sử dụng gồm có phép thêm một đỉnh, phép xóa một đỉnh và phép đổi trạng thái cÿa hai đỉnh cho nhau Tất cả các phép biến đổi này đều được ước lượng giá trị bái hàm phạt á trên Việc lựa chọn toán tử tiếp theo sẽ phụ thuộc vào giá trị cÿa phép biến đổi đó và danh sách tabu
Bên cạnh đó, để hạn chế việc mắc kẹt trong một vùng tìm kiếm hoặc vùng tìm kiếm đó không có giá trị đáng kể Thuật toán sử dụng phư¢ng pháp xóa một lượng lớn các đỉnh thống trị và thay thế bằng các đỉnh khác theo một quy luật nhất định sau mỗi một khoảng thßi gian ngắn cố định, điều này góp phần làm thay đổi điểm đang duyệt cách một khoảng không quá xa so với điểm duyệt trước đó Kích thước cÿa danh sách tabu được lựa chọn trong bài cố định và tham số thực tế vừa đÿ để việc duyệt tập trung h¢n vào vùng được xét duyệt thay vì đi sang vùng xét duyệt khác một nhanh chóng
Sau khi kết thúc việc sử dụng tìm kiếm địa phư¢ng, bài toán quy hoạch nguyên rút gọn được xây dựng từ tần số cÿa các đỉnh được lựa chọn làm đỉnh thống trị Mỗi bài toán quy hoạch nguyên rút gọn được giải với ràng buộc về thßi gian Mục đích cÿa việc giải quyết bài toán rút gọn này nhằm tìm ra lßi giải tốt h¢n sau khi đã thực thi phần tìm kiếm địa phư¢ng Kết quả thực nghiệm đã