Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 47 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
47
Dung lượng
0,97 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN ĐỨC DŨNG KHAI THÁC TẬP MỤC LỢI ÍCH CAO SỬ DỤNG PHƯƠNG PHÁP TỐI ƯU ĐÀN KIẾN Ngành: Khoa học máy tính Chuyên ngành: Khoa học máy tính Mã số: 8480101.01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS Hồng Xn Huấn Hà Nội - 2019 LỜI CẢM ƠN Tôi xin gửi lời cảm ơn chân thành tới PGS.TS Hoàng Xuân Huấn, người thầy đáng kính tận tình bảo, hướng dẫn tơi suốt q trình tìm hiểu, nghiên cứu hoàn thiện luận văn Với kiến thức sâu rộng, nhiều năm nghiên cứu lĩnh vực tối ưu hóa phương pháp tối ưu hệ kiến thầy giúp tơi hiểu rõ, sâu sắc nhiều khó khăn gặp phải trình nghiên cứu Thầy đưa góp ý chi tiết, tỉ mỉ q báu giúp cho tơi hồn thành luận văn Tôi xin bày tỏ lịng biết ơn tới thầy trường Đại học Công nghệ tham gia giảng dạy chia sẻ kinh nghiệm quý báu cho tập thể cá nhân tơi nói riêng Tơi xin cảm ơn tới thầy anh chị thường xuyên giúp đỡ, trao đổi, góp ý vấn đề khoa học liên quan tới luận văn Hà Nội, tháng năm 2019 HỌC VIÊN Nguyễn Đức Dũng LỜI CAM ĐOAN Tơi xin cam đoan cơng trình nghiên cứu cá nhân hướng dẫn giúp đỡ PGS.TS Hoàng Xuân Huấn Các kết viết chung với tác giả khác đồng ý tác giả trước đưa vào luận văn Trong toàn nội dung nghiên cứu luận văn, vấn đề trình bày tìm hiểu nghiên cứu cá nhân tơi trích dẫn từ nguồn tài liệu có ghi tham khảo rõ ràng, hợp pháp Trong luận văn, tơi có tham khảo đến số tài liệu số tác giả liệt kê mục tài liệu tham khảo Hà Nội, tháng năm 2019 HỌC VIÊN Nguyễn Đức Dũng MỤC LỤC LỜI CẢM ƠN LỜI CAM ĐOAN DANH MỤC KÝ HIỆU VÀ TỪ VIẾT TẮT DANH SÁCH CÁC BẢNG DANH SÁCH HÌNH VẼ MỞ ĐẦU CHƯƠNG 1: TỐI ƯU TỔ HỢP VÀ BÀI TOÁN TỐI ƯU ĐÀN KIẾN 12 1.1 Giới thiệu toán tối ưu tổ hợp 12 1.2 Giới thiệu toán người chào hàng 13 1.3 Các cách tiếp cận giải toán tối ưu tổ hợp 13 1.3.1 Heuristic cấu trúc 13 1.3.2 Tìm kiếm địa phương 14 1.3.3 Phương pháp meta-heuristic 15 1.3.4 Phương pháp memetic 15 1.4 Phương pháp tối ưu đàn kiến 16 1.4.1 Từ kiến tự nhiên đến kiến nhân tạo 16 1.4.1.1 Kiến tự nhiên 16 1.4.1.2 Kiến nhân tạo (Artificial Ant) 19 1.4.2 Phương pháp tối ưu đàn kiến 19 1.4.3 Mơ tả thuật tốn ACO tổng quát 20 1.4.4 Các hệ kiến 22 1.4.4.1 Hệ kiến AS 22 1.4.4.2 Hệ kiến ACS 23 1.4.4.3 Hệ kiến Max-Min 25 1.4.4.4 Hệ kiến Max-Min trơn 26 CHƯƠNG 2: KHAI THÁC TẬP MỤC CAO TIỆN ÍCH BẰNG PHƯƠNG PHÁP TỐI ƯU ĐÀN KIẾN 27 2.1 Bài tốn khai thác tập mục lợi ích cao 27 2.2 Một số phương pháp tiếp cận để giải toán 30 2.3 Thuật toán HUIM-ACS 31 2.3.1 Xây dựng đồ thị cấu trúc khởi tạo vết mùi 31 2.3.2 Quy tắc cắt tỉa nút 35 2.3.3 Quy tắc cập nhật mùi 37 2.4 Thuật toán HUIM-SMMAS 39 CHƯƠNG 3: KẾT QUẢ THỰC NGHIỆM, SO SÁNH VÀ ĐÁNH GIÁ 41 3.1 Bộ liệu chuẩn 41 3.2 Tiến hành chạy thực nghiệm 41 3.3 Kết thực nghiệm đánh giá 42 KẾT LUẬN 44 TÀI LIỆU THAM KHẢO 45 DANH MỤC KÝ HIỆU VÀ TỪ VIẾT TẮT STT Từ viết tắt Từ cụm từ ACO Ant Colony Optimization (Tối ưu hóa đàn kiến) AS Ant System (Hệ kiến AS) ACS Ant Colony System (Hệ kiến ACS) MMAS Max-Min Ant System (Hệ kiến MMAS) SMMAS Smooth-Max Min Ant System (Hệ kiến MMAS trơn) TSP Travelling Salesman Problem (Bài toán người chào hàng) TƯTH Tối ưu tổ hợp HUI High-Utility Itemset HUIM High-Utility Itemsets Mining 10 TWU Transaction-Weight Utility 11 FIM Frequence Itemset Mining DANH SÁCH CÁC BẢNG Bảng 2.1: Danh sách giao dịch bảng lợi nhuận sản phẩm 27 Bảng 3.1: Bộ liệu chạy thử nghiệm 41 Bảng 3.2: Ngưỡng tiện ích thiết lập chạy thực nghiệm 41 DANH SÁCH HÌNH VẼ Hình 1.1: Lời giải nhận thơng qua tìm kiếm địa phương 15 Hình 1.2: Thể hành vi kiến tự nhiên 17 Hình 1.3: Thực nghiệm cầu đôi 18 Hình 1.4: Thí nghiệm bổ sung 19 Hình 1.5: Lựa chọn đỉnh 21 Hình 2.3.1: Đồ thị cấu trúc định tuyến với items 32 Hình 2.3.2: Hàm heuristic trường hợp khơng có thơng tin TWU 33 Hình 2.3.3: Hàm heuristic giữ lại tất TWU 34 Hình 2.3.4: Hàm heuristic tính tốn TWU 35 Hình 2.3.5: Quy tắc cắt tỉa tích cực 36 Hình 3.3.1: So sánh số lượng HUI tìm thuật tốn 42 Hình 3.3.2: So sánh thời gian thực thuật toán 43 Hình 3.3.3: So sánh tốc độ hội tụ hai thuật toán 43 MỞ ĐẦU Hiện nay, việc tính tốn doanh số tối ưu hóa lợi nhuận bán hàng cơng việc quan trọng, ảnh hưởng trực tiếp đến doanh thu chiến lược bán hàng công ty, siêu thị hay đơn vị bán lẻ Đặc biệt, với số lượng hàng hóa lớn, giá khác nhau, nên việc tính tốn lợi nhuận tối ưu từ bán hàng có quan trọng Trong số lượng giao dịch lên đến hàng chục nghìn giao dịch, việc tính tốn xem mặt hàng đem lại doanh số cao, mặt hàng kinh doanh không hiệu dù bán với số lượng lớn trở nên khó khăn liệu lớn, liên tục Bài tốn khai thác tập mục lợi ích cao(High-Utility Itemsets Mining – HUIM) nhóm tác giả R.C Chan, Q Yang, Y.D Shen đề xuất vào năm 2003, để tìm HUI(High-Utility Itemsets), tổ hợp đem lại lợi nhuận cao từ sở liệu giao dịch lưu lại Từ đó, cơng ty, siêu thị bán lẻ đưa chiến lược kinh doanh cho phù hợp, nhằm tối đa hóa lợi nhuận Trong phương pháp đề xuất trước đó, hầu hết nghiên cứu tập trung vào việc khai thác tần suất xuất tập mục (FIM) khai thác quy tắc liên kết (ARM) Các thuật toán phát triển để khai thác tập hợp tập mục có tần suất xuất khơng nhỏ ngưỡng tối thiểu để tìm quy tắc liên kết mà độ tin cậy không thấp ngưỡng tối thiểu[1, 2] Vì có tần suất xuất tập mục phát FIM ARM, khơng đủ để xác định tập liệu có lợi nhuận cao, đặc biệt tập mục xuất có giá trị lợi nhuận cao Ví dụ, cửa hàng bách hóa bán đồ trang sức hầu hết hàng hoá khác tháng, đồ trang sức thường có lợi nhuận cao hàng hoá khác mua nhiều thời kỳ Trên thực tế, thông tin cho tập mục lợi ích cao (HUIs) có giá trị tập phổ biến Khác với FIM ARM, vấn đề khai thác tập mục lợi ích cao (HUIM) [3-6] đề xuất để khám phá tập “có ích” “có lợi nhuận” từ sở liệu định lượng Một ngưỡng lợi ích tối thiểu cho người dùng cụ thể sử dụng để ước tính liệu tập thuộc tính tập mục lợi ích cao hay khơng (HUI) Tập liệu HUI giá trị lợi nhuận tập cao ngưỡng Trong thực tế, không “lợi nhuận” áp dụng giá trị tiện ích để khai thác tập mục có ích, “trọng lượng”, “chi phí” yếu tố khác khai thác HUI Có nhiều thuật tốn đề xuất để khai thác tập hợp HUI Chan cộng [7] lần đề xuất khái niệm vấn đề khai thác hữu ích thay FIM Yao cộng [4] đề xuất khai thác HUI theo số lượng mặt hàng tiện ích nội lợi nhuận đơn vị mặt hàng tiện ích bên ngồi Liu cộng [8] đề xuất mơ hình TWU (Transaction Weight Utility) hai giai đoạn trọng số giao dịch giảm dần (TWDC) để khai thác HUI Lin cộng [9] trình bày HUP để khai thác HUIs Lan cộng sự[10] thiết kế thuật toán khai thác dựa chế thiết lập mục(Index) phát triển chiến lược cắt tỉa để khai thác hiệu HUI Sau đó, Tseng [11] thiết kế thuật toán khai thác tăng trưởng để lấy HUI dựa cấu trúc UP-develop HUI-Miner [12] thuật toán hiệu sử dụng nhiều để khai thác HUI Các thuật toán đề xuất để giải tốn HUIM phải nhiều thời gian tính tốn với khơng gian tìm kiếm khổng lồ, số lượng mục riêng biệt kích thước sở liệu lớn Các thuật tốn tiến hóa cách hiệu tìm giải pháp tối ưu sử dụng nguyên tắc tiến hóa tự nhiên [21] Các điều kiện dừng nghiêm ngặt thiết lập để hạn chế thời gian tính tốn cho q trình có giải pháp gần tối ưu Thuật toán di truyền (GA) [22], loại EC, cách tiếp cận tối ưu để giải tốn NP-hard khơng tuyến tính, sử dụng để tìm kiếm khơng gian tìm kiếm lớn để tìm giải pháp tối ưu cho hàm mục tiêu thiết kế với toán khác lựa chọn, chéo đột biến Trong khứ, Kannimuthu Premalatha [20] thơng qua thuật tốn di truyền phát triển khai thác tập mục lợi ích cao cách sử dụng thuật toán di truyền với đột biến xếp hạng sử dụng ngưỡng tiện ích tối thiểu (HUPEumu-GRAM) để khai thác HUI Một thuật toán di truyền khác gọi HUPEwumu-GRAM đề xuất để khai thác HUIs với ngưỡng tiện ích tối thiểu cụ thể Đối với hai thuật toán này, việc di truyền chéo đột biến sử dụng để ngẫu nhiên tạo lời giải trình tiến hóa Tuy nhiên, cần số lượng HUI khởi tạo ban đầu, số lượng HUI lại sở liệu lớn Thuật toán tối ưu bầy đàn (Particle Swarm Optimization-PSO) kỹ thuật tối ưu sử dụng nhiều [23] Lin cộng [24] đề xuất kỹ thuật dựa PSO để khai thác tập mục lợi ích cao dựa PSO nhị phân (BPSO) Nó gọi HUIM-BPSO áp dụng mơ hình TWU để tìm HUI hiệu Ngồi ra, thuật tốn thuộc nhóm kiến phép lai ACO với thuật toán meta-heuristic khác áp dụng lĩnh vực khai thác liệu 10 - Quy tắc tỷ lệ ngẫu nhiên cho HUIM-ACS: Một hàm heuristic sử dụng quy tắc tỷ lệ ngẫu nhiên để khai thác HUI thiết kế để hướng dẫn số kiến cách hiệu Hàm heuristic định nghĩa để ước tính giá trị tương tác hai yếu tố Nói chung, phương pháp tiếp cận đề xuất sử dụng giá trị TWU cho tập hợp gồm nút (mục) nút ứng viên (mục) hàm heuristic Tuy nhiên, tính tất TWU cho cặp mục lãng phí nhiều thời gian tìm kiếm sở liệu Thuật toán đề xuất tính tốn TWU cho tập kiến đến với nút liên quan lần Do đó, có ba loại tình khác liên quan đến trọng số lợi ích giao dịch cho tập liệu bao gồm mục mục ứng viên việc thực quy tắc tỷ lệ ngẫu nhiên, là: + Khơng có thông tin TWU cho cặp item: Bởi thuật tốn đề xuất tìm thấy 1-HTWUI đầu tiên, mục có tiện ích cân giao dịch cho tập thân tương ứng Phương pháp đề xuất sử dụng trọng số lợi ích giao dịch cho nút đích hàm heuristic trực tiếp Một ví dụ đơn giản thể hình 2.3.2 Hình 2.3.2: Ví dụ hàm heuristic trường hợp khơng có thơng tin TWU Trong hình 2.3.2, hàm heuristic cạnh a → n, η (a, n) trọng số lợi ích giao dịch cho itemset {n}, twun Ví dụ, η (a, b) = twub = 100, η (a, f) = twuf = 80 + Quy trình giữ lại tất TWU cho cặp item: Do thông tin đầy đủ, thuật tốn đề xuất sử dụng tiện ích trọng số giao dịch cho tập hợp tiện lợi bao gồm mục mục đích Trong hình 3.3, hàm heuristic cạnh a → n, η (a, n) twua Ví dụ, η (a, b) = twuab = 110, η (a, f) = twuaf = 88 33 Hình 2.3.3: Ví dụ hàm heuristic giữ lại tất TWU + Một số TWU cho mục ghép nối tồn trình này, số khơng Trong trường hợp này, số TWU cho tập hợp bao gồm mục mục đích khơng tính trước Phương pháp đề xuất áp dụng tiện ích trọng lượng giao dịch hàm heuristic trực tiếp Về mặt thức, hàm heuristic từ a đến n định nghĩa sau: 𝑡𝑤𝑢𝑎𝑛 , 𝜂(𝑎, 𝑛) = { 𝑒𝑡𝑤𝑢𝑎𝑛 , 𝑡𝑤𝑢𝑎𝑛 ℎ𝑎𝑠 𝑏𝑒𝑒𝑛 𝑐𝑎𝑙𝑐𝑢𝑙𝑎𝑡𝑒𝑑 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒 (9) Với etwuan tiện ích đánh giá giao dịch ước tính cho tập {a, n} tính sau: 𝑒𝑡𝑤𝑢𝑎𝑛 = |𝑇𝑎 | × 𝑡𝑤𝑢𝑛 ∑𝑦∈𝑇𝑎 𝑡𝑤𝑢𝑎𝑦 × ∑𝑥∈𝑇𝑎 𝑡𝑤𝑢𝑥 |𝑇𝑎 | (10) Trong Ta tập tập hạng mục ứng cử viên kế tiếp, y Ta cho twuay tính tốn trước Một ví dụ đơn giản cho trường hợp hình 2.3.4 Bởi khơng có twuad bên cạnh ⃗⃗⃗⃗ 𝑎𝑑, etwuad tạo hàm heuristic thay twuad Vì vậy, hàm heuristic ŋ(𝑎, 𝑑) = ∗120 100+110+80 ∗ 110+108+88 34 = 126.62 Hình 2.3.4: Ví dụ hàm heuristic tính toán TWU 2.3.2 Quy tắc cắt tỉa nút Thuật tốn đề xuất thực q trình tỉa hai lý chính, thứ tránh dấu vết tìm kiếm chuyến bị trùng lặp, kiến khác gỡ bỏ số nhánh mà khơng có hội để phát tập tiện ích cao từ đồ thị định tuyến Q trình tỉa thưa làm giảm khơng gian tìm kiếm HUI nâng cao hiệu việc tìm kiếm Hai quy tắc cắt tỉa đề xuất mô tả tiểu mục sau đây: - Quy tắc tỉa tích cực: Theo phương thức [8], TWU tập liệu nhỏ ngưỡng HUI, tất phần tử thừa chắn khơng có hội trở thành HUI Trong HUIM-ACS, thuật toán trì bảng băm tỉa(pruning hash table) để ghi lại số tập liệu Khi kiến đến nút lần đầu tiên, thuật tốn tính TWU cho tập liên quan Nếu TWU nhỏ ngưỡng HUI, tập lưu trữ bảng băm tỉa Sau đó, kiến loại bỏ nút ứng cử viên nhánh trước tiên, nút phần tử thừa tập bảng băm tỉa Quá trình tỉa cành gọi quy tắc cắt tỉa tích cực Một ví dụ đơn giản thể hình 2.3.5 Giả sử kiến đến nút (tập quan hệ có liên quan {b, c}) tính tốn tiện ích trọng số giao dịch cho mục (b, c), twubc, nhỏ ngưỡng Các itemset {b, c} đưa vào bảng băm tỉa Tiếp theo, kiến khác đến node 5, tỉa nút 11 (các itemset liên 35 quan {a, b, c}, tập hợp phần tử {a, b}) nhánh trực tiếp cách đề cập đến việc cắt tỉa Bảng băm Hình 2.3.5: Ví dụ quy tắc cắt tỉa tích cực - Quy tắc cắt tỉa đệ quy: Phương pháp đề xuất không ước lượng tập tương tự cho dù HUI hay khơng Vì lý này, cắt nhánh khơng chứa tập khơng ước lượng HUI quy trình đệ quy Một kiến kết thúc chuyến đi, khơng có giải pháp khả thi nhánh Do đó, phương pháp đề xuất thực quy tắc cắt tỉa đệ qui dừng chuyến hai trường hợp Tình TWU nút ngưỡng HUI; Thứ hai khơng có nhánh từ nút Trong trường hợp đầu tiên, phương pháp đề xuất gỡ bỏ tất nhánh khỏi nút trước, sau thực chức cắt tỉa đệ quy từ nút Trong trường hợp thứ hai, thực chức cắt tỉa đệ quy trực tiếp Chức cắt tỉa đệ quy mơ tả Thuật tốn 2.3.3 Thuật tốn 2.3.3: Quy tắc cắt tỉa đệ quy 36 Trong hình 2.3.5, kiến đến nút (tập quan hệ có liên quan {b, xsc}) tính tốn TWU cho mục (b, c), twubc, ngưỡng Kiến thực cơng việc thuật tốn thực quy tắc cắt tỉa đệ quy từ nút Nút cạnh 8, 14 loại khỏi đồ thị định tuyến nút giữ lại có nút sau (nút 9) Giả sử kiến khác đến nút thuật toán thực quy tắc cắt tỉa đệ quy từ nút Lúc này, không nút cạnh 9, 14 loại khỏi đồ thị định tuyến mà nút cạnh s, loại bỏ 2.3.3 Quy tắc cập nhật mùi Trong ACS truyền thống, mật độ pheromone cạnh điều chỉnh hai quy tắc cập nhật pheromone lần lặp HUIM-ACS đề xuất áp dụng quy tắc cập nhật cục đề xuất quy tắc cập nhật toàn cầu tương tự cho khai thác HUI Nhìn chung, quy tắc cập nhật toàn cầu cập nhật mật độ pheromone giải pháp tốt lặp lặp lại giải pháp tốt toàn cầu Tuy nhiên, mục đích HUIM-ACS khơng phải tìm giải pháp tốt mà khám phá nhiều HUI Do đó, HUI có tiện ích cao phát lần lặp áp dụng quy tắc cập nhật toàn cầu Quy tắc cập nhật tồn cầu hồn chỉnh cho HUIMACS mơ tả Thuật toán 2.3.4 function GlobalUpdatingRule(G,H) // G is the routing graph, H is the set of HUIs discovered in this iteration while H ≠ ∅ set h is a itemset with highest utility in H; set th is the related tour of h; set uh is the utility of h; set r is the threshold of high-utility itemsets; if some edges in the tour th still exists in the graph G then for each edge e th ∩ G set pe is the pheromone density of e; 𝑢 pe = pe + ( ℎ); break while; H=H\h; End function; 𝑟 Thuật toán 2.3.4: Quy tắc cập nhật tồn cầu cho HUIMACS 37 Trong Thuật tốn 2.3.4, quy tắc cập nhật đơn giản hóa cơng thức cập nhật tồn cầu truyền thống Nó tăng cường mật độ pheromone tiện ích tập bỏ qua tham số bay Hơn nữa, khơng phải ln làm tăng mật độ pheromone lần lặp Nó tránh số vùng đồ thị định tuyến gửi nhiều pheromone đường Hành vi tăng cường khả khai thác làm giảm ảnh hưởng việc thăm dò ACS Điều tốt cho việc khai thác HUI cần phải tìm HUI cao giải pháp tối ưu Theo mô tả trên, hạng mục khai thác tiện ích cao đề xuất cho hệ thống kiến mơ tả Thuật tốn 2.3.5 Input: D, a quantitative transaction table; ptable, a profit table; 𝛿, the minimum utility threshold ratio; M, the size of ant’s population; G, the maximum generations of ant system; 𝜏0 , the initial pheromone density Output: HUIs, a set of high-utility itemsets calculate total utility(TU) and transaction-weight utility(twuj) for each itemj; find − HTWUIs ← { 𝑖𝑗 |𝑡𝑤𝑢𝑗 ≥ 𝑇𝑈 × 𝛿}; construct the ant routing graph from 1-HTWUIs set 𝑝ℎ𝑎𝑠ℎ ← ∅, 𝐻𝑈𝐼𝑠 ← ∅, 𝑔 = 0; while there are some ants which have not already build their solution set 𝑠𝑖𝑏 = ∅ //𝑠𝑖𝑏 is the iteration best solution choose an ant which has not finished its tour; use phash to prune the candidate edges by positive pruning rule; select an edge from the cadidate edges to the next stage according to the pseudo-random proportional rule; 10 perform local updating rule to adjust the density of pheromone on the select edge; 11 set the related itemset for the current node is cis; 12 calculate u(cis) and twucis //utility and transaction-weight utility 13 if 𝑢(𝑐𝑖𝑠) ≥ 𝑇𝑈 × 𝛿 then 14 15 16 𝐻𝑈𝐼 ← 𝑐𝑖𝑠; if 𝑢(𝑐𝑖𝑠) ≥ 𝑢(𝑠𝑖𝑏 ) then 𝑠𝑖𝑏 = 𝑐𝑖𝑠; 38 17 18 if 𝑡𝑤𝑢𝑐𝑖𝑠 < 𝑇𝑈 × 𝛿 then 𝑝ℎ𝑎𝑠ℎ ← 𝑐𝑖𝑠 //phash is pruning hash table prune the current node and its following nodes; 19 20 next; if there is at least one candidate edge from current node then go to line 8; else recursive pruning rule; the ants has built its tour; next; 21 g=g+1; 22 if g=G or there is not any candidate path from the starting point then 23 return HUIs; 24 accumulate pheromone on the paths which ants passed by sib //update pheromone density 25 go to line for next iteration; Thuật toán 2.3.5: HUIM-ACS 2.4 Thuật toán HUIM-SMMAS Trên sở thuật toán HUIM-ACS trình bày trên, tơi cải tiến thuật tốn cách áp dụng quy tắc cập nhật mùi hệ kiến Max-Min trơn (SMMAS) Khi đó, quy tắc cập nhật mùi là: Trong đó: 𝜏𝑖𝑗 ← (1 − 𝜌)𝜏𝑖𝑗 + ∆𝑖𝑗 ∆𝑖𝑗 = { 𝜌𝜏𝑚𝑎𝑥 𝜌𝜏𝑚𝑖𝑛 𝑖𝑓 (𝑖, 𝑗) ∈ (𝑡) 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒 Với ACS, để xác định 𝜏0 ta cần tìm lời giải theo phương pháp heuristic dựa vào giá trị hàm mục tiêu Vì giá trị hàm mục tiêu nhận ngẫu nhiên, nên khó xác định tốt tham số cho học tăng cường Quy tắc cập nhật cho phép ta xác định tham số đơn giản hợp lý hơn, SMMAS ta cần xác định tỉ lệ 𝑚𝑖𝑛 , 𝑚𝑎𝑥 Trong thực nghiệm, thiết đặt 𝑚𝑎𝑥 = 1.0 xác định 𝑚𝑖𝑛 qua tỉ lệ 𝑚𝑖𝑛 , 𝑚𝑎𝑥 39 Việc thêm mùi cho cạnh thuộc lời giải tốt bước lặp thuật toán ACS, ta phải xây dựng hàm để tính lượng mùi thêm dựa chất lượng lời giải kiến xây dựng Ví dụ, toán TSP, ACS sử dụng hàm nghịch đảo độ dài đường kiến xác định Điều khó khăn áp dụng Tuy nhiên, SMMAS không cần phải xây dựng hàm Thuật tốn có độ phức tạp ACS, phép tốn khơng phải tính hàm mục tiêu lượng mùi cập nhật Trong thuật toán đề xuất HUIM-SMMAS, chọn tỉ lệ 𝑁+50 𝜏𝑚𝑎𝑥 𝜏𝑚𝑖𝑛 đặt 𝑁 𝑘, với 𝑛ế𝑢 𝑁 ≥ 50 , 𝑁 số đỉnh 𝑛ế𝑢 𝑁 < 50 Hiệu phương pháp cập nhật mùi hệ kiến nhóm tác giả [36] chứng minh thực nghiệm Do đó, thuật tốn HUIM-SMMAS cho kết tốt thuật tốn cũ Tơi tiến hành thực nghiệm, so sánh đánh giá kết chương sau 𝑘={ 100 40 CHƯƠNG 3: KẾT QUẢ THỰC NGHIỆM, SO SÁNH VÀ ĐÁNH GIÁ 3.1 Bộ liệu chuẩn Dữ liệu chuẩn để chạy thuật toán liệu công bố địa chỉ: http://fimi.uantwerpen.be/data/ Đây liệu thực tế sử dụng rộng rãi nghiên cứu HUIM, bao gồm: Chess, Foodmart, Mushroom, Retail, Accident, Connect Database Transaction Count Chess Item Count 287640 6750 Foodmart 1940130 140310 Mushroom 731160 10710 7934580 1482300 Retail Bảng 3.1: Bộ liệu chạy thử nghiệm 3.2 Tiến hành chạy thực nghiệm Các thuật toán thí nghiệm thực ngơn ngữ C++ máy tính cài đặt hệ điều hành Centos 7.5, xử lý AMD Ryzen 1600x 3.6 GHz với lõi, 12 luồng, 8GB RAM 04 liệu tiêu chuẩn: Chess, Foodmart, Mushroom, Retail với ngưỡng lợi ích là: Database Chess Threshold Threshold Threshold 25.00% 25.50% 26.00% Foodmart 0.11% 0.12% 0.13% Retail 0.30% 0.40% 0.50% 14.00% 14.25% 14.50% Mushroom Bảng 3.2: Ngưỡng tiện ích thiết lập chạy thực nghiệm Các thơng số chạy thuật toán thiết lập chạy thực nghiệm để so sánh hai thuật toán: số lần lặp tối đa 3000, kích thước quần thể kiến 15, thí nghiệm thực 20 lần hiển thị kết tối ưu, initPheromone = 1, rho=0.05 41 3.3 Kết thực nghiệm đánh giá Do thuật tốn có tính ngẫu nhiên nên kết so sánh giá trị trung bình lần lặp So sánh thuật toán thời gian chạy, số lượng HUI, tốc độ hội thụ thuật toán, kết cụ thể để đánh sau: Số lượng HUIs: Trong phần này, thí nghiệm đánh giá số lượng HUIs để phân tích hiệu suất thuật tốn Các kết tiến hành thí nghiệm thể hình 3.3.1: Hình 3.3.1: So sánh số lượng HUI tìm thuật tốn Từ hình 3.3.1, kết thí nghiệm cho thấy HUIM-SMMAS tìm số lượng HUIs tốt thuật tốn HUIM-ACS điều kiện thí nghiệm Bên cạnh đó, HUIM-SMMAS có hiệu tốt HUIM-ACS với sở liệu lớn Foodmart Điều thực có ý nghĩa với mục tiêu tốn tìm số HUI nhiều tốt sở liệu có Thời gian chạy thuật tốn: Tiến hành thí nghiệm với thuật tốn với ngưỡng tối thiểu khác so sánh thời gian thực thuật toán Kết chi tiết thể hình 3.3.2 Từ kết thực nghiệm, thấy thuật toán HUIM-SMMAS tốt thuật toán HUIM-ACS thời gian chạy thực nghiệm với phần lớn liệu 42 Kết có nhờ quy tắc cập nhật mùi SMMAS đơn giản, tính tốn quy tắc cập nhật mùi hệ kiến ACS truyền thống Hình 3.3.2: So sánh thời gian thực thuật toán Tốc độ hội tụ: Hình 3.3.3 cho thấy số lượng HUI lần lặp khác cho hai thuật tốn Nhìn chung, tốc độ hội tụ thuật toán HUIM-SMMAS chậm so với HUIM-ACS, nhiên, với sở liệu lớn Foodmart, tốc độ hội tụ HUIM-SMMAS vượt trội hẳn HUIM-ACS Nói chung, thuật tốn tính tốn sở liệu lớn tốt HUIM-ACS Hình 3.3.3: So sánh tốc độ hội tụ hai thuật toán 43 KẾT LUẬN Các toán TƯTH NP-hard có nhiều ứng dụng quan trọng thực tiễn, đặc biệt toán HUIM kinh tế, giúp định hướng kinh doanh tối ưu hóa lợi nhuận thu Khi dùng phương pháp ACO, quy tắc cập nhật mùi đóng vai trị quan trọng, định hiệu thuật toán dùng Luận văn cài đặt thuật toán HUIMSMMAS áp dụng quy tắc cập nhật mùi hệ kiến SMMAS Thuật toán bất biến phép biến đổi đơn điệu hàm mục tiêu, thực nghiệm toán TSP, UBQP, lập lịch sản xuất với liệu chuẩn cho thấy thuật tốn đề xuất có hiệu dễ sử dụng so với thuật tốn thơng dụng ACS MMAS Thuật toán HUIM-SMMAS sử dụng đồ thị cấu trúc định tuyến rõ ràng, thu gọn khơng gian tìm kiếm đặc tính thuật tốn ACO, ngồi ra, việc áp dụng quy tắc cập nhật mùi SMMAS giúp cho thuật toán đơn giản hơn, tăng khả khám phá Kết thực nghiệm cho thấy thuật toán HUIM-SMMAS tốt so với thuật tốn HUIM-ACS cơng bố trước Thuật tốn HUIM-SMMAS áp dụng đồ thị cấu trúc khác kỹ thuật tìm kiếm địa phương để có kết tốt 44 TÀI LIỆU THAM KHẢO R Agrawal, R Srikant, Fast algorithms for mining association rules in large databases, in: The International Conference on Very Large Data Bases, volume 1215, 1994, pp 487–499 [2] M.S Chen, J Han, P.S Yu, Data mining: an overview from a database perspective, IEEE Trans Knowl Data Eng (6) (1996) 866–883 [3] C.F Ahmed, S.K Tanbeer, B.S Jeong, Y.K Lee, Efficient tree structures for high utility pattern mining in incremental databases, IEEE Trans Knowl Data Eng.21 (12) (2009) 1708–1721 [4] H Yao, H.J Hamilton, C.J Butz, A foundational approach to mining itemset utilities from databases., SIAM, 2004, pp 221–225 [5] H Yao, H.J Hamilton, Mining itemset utilities from transaction databases, Data Knowl Eng 59 (3) (2006) 603–626 [6] S.J Yen, Y.S Lee, Mining high utility quantitative association rules, in: Data Warehousing and Knowledge Discovery, 2007, pp 283–292 [7] R.C Chan, Q Yang, Y.D Shen, Mining high utility itemsets, in: IEEE International Conference on Data Mining, 2003, pp 19–26 [8] Y Liu, W.k Liao, A Choudhary, A two-phase algorithm for fast discovery of high utility itemsets, in: Advances in Knowledge Discovery and Data Mining, 2005, pp 689–695 [9] C.W Lin, T.P Hong, W.H Lu, An effective tree structure for mining high utility itemsets, Expert Syst Appl 38 (6) (2011) 7419–7424 [10] G.C Lan, T.P Hong, V.S Tseng, An efficient projection-based indexing approach for mining high utility itemsets, Knowl Inf Syst 38 (1) (2014) 85–107 [11] V.S Tseng, C.W Wu, B.E Shie, P.S Yu, UP-Growth: An Efficient Algorithm for High Utility Itemset Mining, in: ACM SIGKDD international conference on Knowledge Discovery and Data Mining, 2010, pp 253–262 [12] M Liu, J Qu, Mining high utility itemsets without candidate generation, in: ACM International Conference on Information and Knowledge Management, 2012, pp 55–64 [13] M Zihayat, A An, Mining top-k high utility patterns over data streams, Inf Sci 285 (2014) 138–161 [14] H Ryang, U Yun, Top-k high utility pattern mining with effective threshold raising strategies, Knowl Based Syst 76 (2015) 109–126 [1] 45 [15] V.S Tseng, C.W Wu, P Fournier-Viger, S.Y Philip, Efficient algorithms for mining top-k high utility itemsets, IEEE Trans Knowl Data Eng 28 (1) (2016) 54– 67 [16] S Krishnamoorthy, Pruning strategies for mining high utility itemsets, Expert Syst Appl 42 (5) (2015) 2371–2381 [17] U Yun, J Kim, A fast perturbation algorithm using tree structure for privacy preserving utility mining, Expert Syst Appl 42 (3) (2015) 1149–1165 [18] J.C.W Lin, W Gan, P Fournier-Viger, T.P Hong, H.C Chao, Fdhup: fast algorithm for mining discriminative high utility patterns, Knowl Inf Syst (2016) [19] J.C.W Lin, W Gan, P Fournier-Viger, T.P Hong, V.S Tseng, Efficient algorithms for mining high-utility itemsets with uncertain databases, Knowl Based Syst 96 (2016) 171–187 [20] S Kannimuthu, K Premalatha, Discovery of high utility itemsets using genetic algorithm with ranked mutation, Appl Artif Intell 28 (4) (2014) 337–359 [21] R Cattral, F Oppacher, K Graham, Techniques for evolutionary rule discovery in data mining, in: IEEE Congress on Evolutionary Computation, 2009, pp 1737–1744 [22] H John, Adaptation in Natural and Artificial Systems, MIT Press, Cambridge, MA, 1992 [23] Y Zhang, S Wang, G Ji, A comprehensive survey on particle swarm optimization algorithm and its applications, Math Probl Eng 2015 (2015) [24] J.C.W Lin, L Yang, P Fournier-Viger, T.-P Hong, M Voznak, A binary PSO approach to mine high-utility itemsets, Soft Comput (2016) 1–19 [25] J Kennedy, R.C Eberhart, A discrete binary version of the particle swarm algorithm, in: IEEE International Conference on Systems, Man, and Cybernetics, volume 5, 1997, pp 4104–4108 [26] Y Zhang, S Wang, G Ji, A rule-based model for bankruptcy prediction based on an improved genetic ant colony algorithm, Math Probl Eng 2013 (2013) [27] M Dorigo, L.M Gambardella, Ant colony system: a cooperative learning approach to the traveling salesman problem, IEEE Trans Evol Comput (1) (1997) 53–66 [28] A Colorni, M Dorigo, V Maniezzo, Distributed optimization by ant colonies, in: The first European conference on artificial life, 142, 1991, pp 134–142 [29] M Dorigo, V Maniezzo, A Colorni, Ant system: optimization by a colony of cooperating agents, IEEE Trans Syst Man Cybern Part B 26 (1) (1996) 29–41 46 [30] J Han, J Pei, Y Yin, R Mao, Mining frequent patterns without candidate generation: a frequent-pattern tree approach, Data Min Knowl Discov (1) (2004) 53–87 [31] S Zida, P Fournier-Viger, J.C.W Lin, C.W Wu, V.S Tseng, EFIM: a highly efficient algorithm for high-utility itemset mining, in: Mexican International Conference on Artificial Intelligence, 2015, pp 530–546 [32] P Fournier-Viger, J.C.W Lin, A Gomariz, T Gueniche, A Soltani, Z Deng, H.T Lam, The SPMF Open-Source Data Mining Library Version and Beyond, 2016, pp 36–40 [33] J.C.W Lin, W Gan, P Fournier-Viger, T.P Hong, Mining high-utility itemsets with multiple minimum utility thresholds, in: International C∗ Conference on Computer Science & Software Engineering, 2015, pp 9–17 [34] Jimmy Ming-Tai Wu, Justin Zhan, Jerry Chun-Wei Lin, An ACO-based approach to mine high-utility itemsets, Knowledge-Based Systems, Volume 116, 15 January 2017, Pages 102–113 [35] Huan H.X, Trung N.L, Dong D.D, Tue H.H, Solving the Traveling Salesman Problem with Ant Colony Optimization: A Revisit and New Efficient Algorithms, Journal on Electronics and Communications, Vol 2, No 3–4, July – December, 2012 47 ... thực nghiệm cho thấy hiệu MMAS 26 CHƯƠNG 2: KHAI THÁC TẬP MỤC CAO TIỆN ÍCH BẰNG PHƯƠNG PHÁP TỐI ƯU ĐÀN KIẾN 2.1 Bài tốn khai thác tập mục lợi ích cao Một siêu thị bán lẻ kinh doanh hàng trăm... toán tối ưu tổ hợp tổng quát, phương pháp tối ưu đàn kiến, hệ kiến AS, ACS, MMAS, SMMAS Ví dụ tốn người chào hàng giải thuật toán ACO Chương 2: Giới thiệu tốn khai thác tập mục lợi ích cao vài phương. .. toán di truyền phát triển khai thác tập mục lợi ích cao cách sử dụng thuật toán di truyền với đột biến xếp hạng sử dụng ngưỡng tiện ích tối thiểu (HUPEumu-GRAM) để khai thác HUI Một thuật toán