Giải thuật bầy kiến giải bài toán VRP với hạn chế thời gian (VRPMTW)

88 581 13
Giải thuật bầy kiến giải bài toán VRP với hạn chế thời gian (VRPMTW)

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI LUẬN VĂN THẠC SĨ KHOA HỌC GIẢI THUẬT BẦY KIẾN GIẢI BÀI TOÁN VRP VỚI HẠN CHẾ THỜI GIAN (VRPMTW) NGÀNH: CÔNG NGHỆ THÔNG TIN MÃ SỐ: 003757C79 ĐÀM THU LAN Người hướng dẫn khoa học: PGS TS NGUYỄN ĐỨC NGHĨA HÀ NỘI 2009 LỜI CAM ĐOAN Tôi Đàm Thu Lan, học viên cao học lớp CNTT khóa 2007 – 2009 Người hướng dẫn khoa học PGS.TS Nguyễn Đức Nghĩa Tôi xin cam đoan toàn nội dung trình bày luận văn kết tìm hiểu nghiên cứu riêng tôi, trình nghiên cứu đề tài “Giải thuật bầy kiến giải toán VRP với hạn chế thời gian (VRPMTW)” Các kết liệu nêu luận văn hoàn toàn trung thực rõ ràng Mọi thông tin trích dẫn tuân theo luật sở hữu trí tuệ, liệt kê rõ ràng tài liệu tham khảo Tôi xin hoàn toàn chịu trách nhiệm với nội dung viết luận văn Hà Nội, ngày 27 tháng 11 năm 2009 Tác giả luận văn Đàm Thu Lan Xác nhận giáo viên hướng dẫn mức độ hoàn thành luận văn cho phép bảo vệ Hà Nội, ngày tháng năm 2009 Giáo viên hướng dẫn PGS TS NGUYỄN ĐỨC NGHĨA LỜI CẢM ƠN Trước tiên, em xin trân trọng gửi lời cảm ơn lòng biết ơn sâu sắc đến Thầy PGS.TS Nguyễn Đức Nghĩa, người tận tình hướng dẫn em từ bước chọn đề tài đến bước tìm tài liệu nghiên cứu Vì lĩnh vực hoàn toàn mẻ em, thêm vào VRP lớp toán khó nên không nhận khích lệ, động viên, bảo tận tình PGS.TS Nguyễn Đức Nghĩa em hoàn thành luận văn Em xin trân trọng gửi lời cảm ơn đến thầy giáo, cô giáo Viện CNTT & TT cung cấp cho chúng em nhiều kiến thức cần thiết không khóa học mà giúp em nhiều công tác chuyên môn hàng ngày Cuối cùng, xin gửi lời cảm ơn đến người thân, bạn bè đồng nghiệp, người dành cho quan tâm sâu sắc, động viên để hoàn thành luận văn Xin trân trọng cảm ơn Học viên Đàm Thu Lan MỤC LỤC LỜI NÓI ĐẦU CÁC TỪ VIẾT TẮT 10 DANH SÁCH CÁC HÌNH 11 DANH SÁCH CÁC BẢNG .12 Chương – TỔNG QUAN VỀ VRP .13 1.1 Giới thiệu 13 1.2 Định nghĩa toán Ký hiệu 16 1.2.1 VRP với hạn chế trọng tải 17 1.2.2 VRP với hạn chế thời gian 19 1.2.3 VRP nhập xuất hàng kết hợp 20 1.2.4 VRP nhập xuất hàng đồng thời (VRPPD) 21 1.3 Các mô hình cho VRP 22 1.3.1 Mô hình luồng phương tiện 23 1.3.2 Mô hình luồng hàng hóa 24 1.3.3 Mô hình phân hoạch tập 26 Chương – VRP VỚI HẠN CHẾ THỜI GIAN .28 2.1 Giới thiệu chung 28 2.2 Mô hình toán học 28 2.3 Các biến thể VRPTW 30 2.4 Các phương pháp giải VRPTW 32 2.4.1 Thuật toán giải 32 2.4.2 Thuật toán mẹo cổ điển 33 a) Xây dựng lộ trình 33 b) Cải tiến lộ trình 33 2.4.3 Thuật toán mẹo kết hợp 33 2.4.4 Thuật toán siêu mẹo 34 a) Lời giải ban đầu 35 b) Tìm kiếm cục với λ – Interchange 37 c) Mô luyện 42 d) Tìm kiếm Tabu 45 e) Giải thuật di truyền 48 f) Giải thuật bầy kiến 52 2.5 Kết luận 53 Chương – GIẢI THUẬT BẦY KIẾN 54 3.1 Giới thiệu chung 54 3.2 Nền tảng sinh học 54 3.3 Kiến nhân tạo 56 3.4 Siêu mẹo tối ưu hóa bầy kiến 58 3.5 Các giải thuật tối ưu hóa bầy kiến 60 3.5.1 Hệ thống kiến 60 3.5.2 MAX – MIN Ant System 61 3.5.3 Hệ thống bầy kiến 62 Chương – ÁP DỤNG ACS VÀO VRPTW 65 4.1 Giới thiệu chung 65 4.2 Xây dựng lộ trình 65 4.3 Cập nhật vệt mùi 66 4.4 Giải thuật MACS – VRPMTW 66 4.4.1 Giới thiệu chung 66 4.4.2 Tập khách hàng chấp nhận cửa sổ thời gian 71 4.4.3 Luật thay đổi trạng thái 72 4.4.4 Tính η 72 4.4.5 Tính ϑ 73 4.4.6 Luật cập nhật vệt mùi 73 4.4.7 Giải thuật 74 4.5 Kết luận 77 Chương – KẾT QUẢ THỬ NGHIỆM VÀ KẾT LUẬN 78 5.1 Kết thử nghiệm 78 5.2 Kết luận 82 PHỤ LỤC .84 TÀI LIỆU THAM KHẢO 88 LỜI NÓI ĐẦU Trong thập kỷ gần đây, thấy nhiều ứng dụng tối ưu hóa dựa kỹ thuật lập trình toán học nghiên cứu cho toán quản lý việc phân phối hàng hóa dịch vụ hệ thống phân tán Một số lượng lớn ứng dụng thực tế giới việc sử dụng thủ tục máy tính hóa cho trình phân phối hàng hóa tiết kiệm từ 5% tới 20% tổng chi phí vận chuyển Từ đó, dễ thấy việc tiết kiệm hệ thống kinh tế toàn cầu ý nghĩa Thực vậy, trình vận chuyển liên quan tới tất giai đoạn sản xuất phân phối chiếm từ 10% tới 20% chi phí sản xuất hàng hóa Sự thành công việc sử dụng kỹ thuật nghiên cứu vào hoạt động thực tiễn phát triển hệ thống máy tính từ phần mềm lẫn phần cứng việc tăng cường tích hợp hệ thống thông tin vào quy trình sản xuất thương mại Một yếu tố khác không phần quan trọng phát triển công cụ mô hình hóa mang tính giải thuật cài đặt năm gần Thực vậy, mô hình phản ánh tất đặc điểm toán phân tán nảy sinh ứng dụng thực tế thuật toán tương ứng với toán đó, cách cài đặt máy tính để tìm giải pháp tốt với thời gian tính toán chấp nhận Vì báo cáo xin trình bày toán liên quan tới việc phân phối hàng hóa kho hàng khách hàng, gọi toán lộ trình xe hàng (Vehicle Routing Problems – VRP) hay toán lập lịch xe hàng (Vehicle Scheduling Problems) VRP Dantzig Ramser [1] đưa vào năm 1959 với toán ban đầu việc phân phố gas tới trạm bán lẻ hai ông đề xuất mô hình toán học, giải thuật cho toán Kể từ nay, VRP nhiều nhà nghiên cứu quan tâm, mở rộng, đưa giải pháp, ứng dụng vào thực tế VRP có nhiều biến thể CVRP, VRPTW, VRPB, VRPPD, VRPTW toán quan trọng, xuất nhiều hệ thống phân tán VRPTW mô tả toán tính toán lộ trình có chi phí nhỏ từ kho hàng tới tập khách hàng, lộ trình phải thỏa mãn khách hàng thăm lần xe hàng khoảng thời gian định, tất lộ trình phải kho hàng kết thúc kho hàng, tổng yêu cầu khách hàng không vượt dung lượng xe VRPTW có nhiều mục tiêu ví dụ tối thiểu hóa số lượng xe sử dụng, tổng thời gian phục vụ Một số ứng dụng VRPTW thực tế với toán: cung cấp dịch vụ ngân hàng, phân phát thư, thu thập sản phẩm khách hàng trả lại, dịch vụ nhà hàng ăn uống… Các nhà nghiên cứu đề xuất nhiều cách tiếp cận từ cách tiếp cận mẹo tới tối ưu hóa cho VRPTW, tiếp cận mẹo thành công ví dụ mẹo láng giềng gần nhất, mô luyện (SA), tìm kiếm Tabu (TS), giải thuật di truyền (GA), giải thuật đa hệ thống kiến dựa ý tưởng tối ưu hóa bầy kiến (ACO) SA đưa Kirkpatrick [7], tìm kiếm không gian lời giải cách mô trình luyện kim loại SA thực nhảy tới vùng không gian tìm kiếm ban đầu Bước nhảy giảm dần theo thời gian nhiệt độ giảm xuống Cuối cùng, trình trở thành tìm kiếm cục Osman [8] ứng dụng SA để giải VRP cách di chuyển khách hàng từ hành trình tới hành trình khác hoán chuyển hai khách hàng từ hai lộ trình với Nói chung, SA giải thuật đơn giản, nhanh để giải VRPTW với kết gần tối ưu trường hợp tối ưu tổng thể xa so với lời giải ban đầu SA không đủ lượng để xa TS [6] chiến lược tìm kiếm dựa nhớ, chọn lời giải tốt mà không vi phạm giới hạn để ngăn chặn chu trình Thông thường giới hạn lưu trữ cấu trúc hàng đợi gọi Tabu list Các giới hạn ngăn chặn di chuyển thực t lần lặp cuối lời giải đưa trường hợp bị loại bỏ TS dừng sau số lần lặp cố định Gerdreau, Hertz Laporte ứng dụng TS với mẹo láng giềng gần để di chuyển khách hàng từ lộ trình sang lộ trình khác GA phát triển Holland [9] xây dựng lời giải VRPTW theo dạng bít xâu nhiễm sắc thể Phương pháp bắt đầu dân cư có nhiễm sắc thể ngẫu nhiên, chọn lựa nhiễm sắc thể phù hợp để thực lai tạo trao đổi chéo, đưa hệ khác hệ cha kế thừa gen từ cha mẹ Quá trình tiếp tục đạt tới số lượng cố định hệ dân cư đủ Gambardell đưa giải thuật MACS – VRPTW vào năm 1999 [5], giải thuật xây dựng dựa tảng hệ thống bầy kiến (ACS), hay tổng quát ACO, cách tiếp cận mẹo bắt nguồn từ hành vi kiến thực tế Ý tưởng ACO có số lượng lớn kiến nhân tạo hoạt động phối hợp với để xây dựng lời giải tốt Kiến thực tế phối hợp với trình tìm thức ăn cách để lại lượng mùi đường kiến khác theo sau Để tối thiểu hóa số xe thời gian cho VRPTW, giải thuật gán mục tiêu cho bầy kiến hai bầy kiến trao đổi thông tin thông qua việc cập nhật vệt mùi Cho đến nay, MACS – VRPTW coi đủ sức cạnh tranh với phương pháp tốt để giải VRPTW chất lượng lời giải thời gian tính toán Từ ứng dụng thực tế VRPTW ta thấy khách hàng có nhu cầu phục vụ nhiều lần với nhiều khoảng thời gian khác nhau, đơn vị chủ quản có nhiều xe khác nhau… từ ta có biến thể VRPTW VRPMTW (VRP with Multiple Time Windows) Thực chất toán VRPTW có thêm số ràng buộc thêm nhiều khung thời gian cho khách hàng (khách hàng muốn phục vụ nhiều lần), có nhiều loại xe phục vụ[11] Cho tới chưa có nhiều nghiên cứu, giải pháp cho VRTMTW ta biến đổi mẹo cho VRPTW để giải toán Như nói trên, MACS – VRPTW mẹo nói tốt để giải VRPTW luận văn tập trung vào việc nghiên cứu, áp dụng MACS vào VRPMTW Luận văn gồm năm chương, với nội dung sau: Chương 1: Trình bày cách tổng quan VRP đề cập tới định nghĩa, đặc điểm,các dạng mô hình toán học VRP Chương 2: Tập trung nghiên cứu dạng toán VRPTW Trong chương trình bày khái niệm chung, mô hình toán học số cách tiếp cận có để giải VRPTW Chương 3: Trình bày giải thuật bầy kiến, từ tảng sinh học tới áp dụng vào kiến nhân tạo Chương trình bày giải thuật bầy kiến giải thuật chính, có hiệu cao Hệ thống bầy kiến, Hệ thống kiến Max – Min, tối ưu hóa bầy kiến Chương 4: Từ kiến thức tảng chương hai chương ba, chương trình bày việc áp dụng giải thuật bầy kiến ACS để giải VRPTW nói chung đề xuất giải thuật MACS để giải toán VRPMTW Đây nói phần nội dung luận văn Chương 5: Trình bày kết thử nghiệm cài đặt giải thuật MACS – VRPMTW chạy chương trình với liệu, từ đưa kết luận so sánh kết phương pháp với phương pháp khác 10 CÁC TỪ VIẾT TẮT Từ viết tắt Tiếng Anh VRP CVRP Vehicle Routing Problems Capactitated Constrained VRP DVRP Distance Constrained VRP TSP VRPTW VRPB Traveling Salesman Problem Vehicle Routing Problems With Time windows VRP with Backhauls VRPPD VRP with Pickup and Delivery ACVRP SCVRP DCVRP Asymmetric CVRP Symmetric CVRP Distance-Constrained VRP VRPMTW VRP with Multi Time Windows GA DVRP PFIH LSD Genertic Algorithm Dynamic Vehicle Routing Problem Push–Forward Insertion Heuristic Local Search Descent Method SA TS SI ACO AS MMAS Simulated Annealing Tabu search Swarm intelligence Ant colony optimization Ant System MAX – MIN Ant System ACS MACS – VRPTW ACS-VEI ACS-TIME Ant Colony System Multiple Objective Ant Colony System – VRPTW Ant Colony System – Vehicle Ant Colony System – Time Tiếng Việt Bài toán định tuyến xe hàng Bài toán VRP với hạn chế dung lượng Bài toán VRP với hạn chế khoảng cách Bài toán người du lịch Bài toán VRP với hạn chế thời gian Bài toán VRP nhập xuất hàng kết hợp Bài toán VRP nhập xuất hàng đồng thời Bài toán VRP không đối xứng Bài toán VRP đối xứng Bài toán VRP với hạn chế trọng tải khoảng cách Bài toán VRP với đa khung thời gian Giải thuật di truyền Bài toán định tuyến xe hàng động Mẹo chèn đẩy trước Phương pháp tìm kiếm cục hệ Mô luyện kim Tìm kiếm Tabu Trí thông minh bầy đàn Tối ưu hóa bầy kiến Hệ thống kiến Giải thuật hệ thống kiến MAX – MIN Hệ thống bầy kiến Hệ bầy kiến đa mục tiêu cho VRPTW Bầy kiến tối thiểu hóa số xe hàng Bầy kiến tối thiểu hóa thời gian 11 DANH SÁCH CÁC HÌNH Hình 1.1: Các lớp toán VRP 16 Hình 1.2: Ví dụ luồng đường lộ trình (C = 25) 25 Hình 2.1: Thao tác (1,0) 38 Hình 2.2: Thao tác (2,1) 39 Hình 2.3 Tối ưu cục 41 Hình 2.4: Một trường hợp mà FB tốt GB 42 Hình 3.1: Thí nghiệm cầu đôi 56 Hình 3.2: Đồ thị tương ứng với mô hình thí nghiệm hình 3.1 56 Hình 4.1 Kiến trúc MACS – VRPTW 70 75 /* Main loop */ Do Xóa nút kho hàng Gọi ACS-VEI While ACS-VEI tìm lời giải chấp nhận Tạo nút kho hàng Gọi ACS - TIME End Bảng 4.2: Giải thuật ACS - TIME /* ACS-TIME: Tối thiểu hóa thời gian */ Procedure ACS-TIME(v) /* Tham số v số lượng xe nhỏ lời giải chấp nhận */ tính từ 1./* Khởi tạo vệt mùi */ τ(i, j) = τrecord(i, j) Repeat For each kiến k Gọi thủ tục xây dựng hành trình If #visited_customers(ψ)= |N| Then If nút thăm cuối nút kho hàng Then Xóa nút kho hàng gb k ψ Else =ψ If L k < L gb Then ψ ψ gb k ψ =ψ End If End If End If End For each /* Cập nhật vệt mùi tổng thể */ Until gặp điều kiện dừng END Bảng 4.3: Giải thuật ACS - VEI /* ACS-VEI: Tối thiểu hóa số xe sử dụng */ Procedure ACS-VEI 76 /* Khởi tạo vệt mùi*/ τ ij = , ∀(i, j ) ∈ψ gb N LNN Repeat For each kiến k Gọi thủ tục xây dựng hành trình If #visited_customers(ψk)= |N| Then gb k ψ =ψ τ record (i, j ) = τ (i, j ) Exit Procedure Else If #visited_customers(ψk)> #visited_customers(ψACSVEI ) Then ACS −VEI k ψ =ψ End If End If for each nút j ∉ ψk INj = INj + End for each End for each /* Cập nhật vệt mùi tổng thể với ψgb */ ⎧⎪(1 − α ).τ (i, j ) + α ( L gb ) −1 , (i, j) ∈ ψgb ψ τ (i, j ) = ⎨ ⎪⎩ (1 − α ).τ (i, j ), ngược lại /* Cập nhật vệt mùi tổng thể với ψACS-VEI */ ⎧⎪(1 − α ).τ (i, j ) + α ( L ACS −VEI ) −1 , (i, j) ∈ ψACS – VEI ψ τ (i, j ) = ⎨ ⎪⎩ (1 − α ).τ (i, j ), ngược lại Until gặp điều kiện dừng END Bảng 4.4: Thủ tục xây dựng hành trình /* Thủ tục xây dựng hành trình cho kiến k */ Khởi tạo ψk Repeat /* Xác định khách hàng thích hợp */ 77 For each nút khách hàng j chưa thăm If (Si + ti,j ≤ lj) AND (tổng thời gian từ kho cuối ≤ P) AND (nếu cần thiết, chuyến thăm đủ xa từ khách hàng khác tới khách hàng này) AND (thỏa mãn ràng buộc dung lượng) Then j thích hợp tính η(i, j) ϑ(i,j) End if End for each For each nút kho hàng j chưa thăm If (không tìm nút thích hợp) OR (tổng yêu cầu tích lũy > 3/4 dung lượng) Then j thích hợp tính η(i, j) ϑ(i,j) End if End for each If (không có khách hàng phù hợp nữa) Then /* Chọn nút để thăm */ Lấy q If (q < q0) Then khai thác Else thăm dò End if Chèn j vào ψk Cập nhật dung lượng lại /* Cập nhật vệt mùi cục */ τ(i,j) := (1 – ρ).τ(i, j) + ρ∆τ(i, j) End if Until không tìm thấy khách hàng phù hợp 4.5 Kết luận Nội dung chương trình bày mô hình toán học, luật thay đổi trạng thái, công thức sử dụng để cập nhật vệt mùi phần quan trọng trình bày giải thuật MACS – VRPMTW, cách tiếp cận dựa tối ưu hóa bầy kiến để giải toán định tuyến xe hàng với nhiều cửa sổ thời gian Nói riêng, MACS – VRPMTW đưa để giải toán định tuyến xe hàng với hai hàm mục tiêu: (i) tối thiểu hóa số chuyến (hay số xe hàng) (ii) tối thiểu hóa tổng thời gian Ý tưởng phối hợp hoạt động nhiều bầy kiến khác nhau, bầy kiến thực tối ưu hóa hàm mục tiêu khác Các bầy kiến làm việc cách sử dụng vệt mùi độc lập chúng hợp tác với việc trao đổi thông tin 78 Chương – KẾT QUẢ THỬ NGHIỆM VÀ KẾT LUẬN 5.1 Kết thử nghiệm Phần trình bày kết thực nghiệm hiệu giải thuật MACS - VRPMTW Giải thuật cài đặt ngôn ngữ C++, chạy máy tính HP cài hệ điều hành Windows 7, Itel Core due, 2GB RAM, 2.0 GHz Cho đến nay, chưa có liệu chuẩn cho VRPMTW, ta sử dụng liệu Fisher[20] Các liệu có đặc điểm lấy nguồn từ liệu chuẩn toán VRP không giới hạn cửa sổ thời gian với số lượng xe cố định, không xem xét yếu tố khách hàng yêu cầu phục vụ theo giai đoạn, đưa Fisher [20] Từ liệu này, ta biến đổi thành liệu cho VRPMTW theo cách sau: tạo số cửa sổ thời gian cho khách hàng phục vụ lời giải tốt VRP có số cửa sổ thời gian tạo Từ đó, tạo 28 liệu, chia làm loại sau, loại có bộ: • cửa sổ thời gian cho khách hàng, độ rộng cửa sổ từ 100 tới 300 phút (bộ liệu từ – 4, 29 – 32 ), • cửa sổ thời gian cho khách hàng, độ rộng cửa sổ từ 50 tới 100 phút (bộ liệu từ – 8, 33 – 36), • nhiều hai cửa sổ cho khách hàng, độ rộng từ 70 tới 100 phút, hai cửa sổ phân tách khoảng thời gian từ 50 đến 100 phút (các liệu từ – 12, 37 – 40), • nhiều bốn cửa sổ cho khách hàng với độ rộng từ 30 đến 200 phút, hai cửa sổ cách từ 50 tới 100 phút (các liệu từ 13 – 16, 41 – 44), • nhiều có năm cửa sổ cho khách hàng với độ rộng từ 50 tới 100 phút, hai cửa sổ cách từ 15 tới 50 phút (các liệu từ 17 – 20, 45 – 48), • nhiều có sáu cửa sổ cho khách hàng với độ rộng từ 50 tới 200 phút, hai cửa sổ cách từ 30 tới 100 phút (các từ 21- 24, 49 – 52), • nhiều mười cửa sổ cho khách hàng với độ rộng từ 40 tới 80 phút, hai cửa sổ cách từ 15 tới 50 phút (các 25 – 28, 53 – 56) 79 Số lượng xe sử dụng tất liệu đặt thời gian phục vụ Thời gian tối đa hành trình chọn cho chấp nhận tổng thời gian với ba lần thời gian tối ưu Ngoài ra, theo kết tính toán [10], ta chọn giá trị cho số tham số sau: α = 0.1, ρ = 0.9, q0 = 0.9 số tham số khác là: f = 80, số lần lặp tối đa = 10000, thời gian tính toán nhiều cho phép = 250, số lần lặp nhiều không cải tiến = 155 Ta thực kiểm thử chương trình với nhiều giá trị khác β ν, số mũ η, ϑ luật thay đổi trạng thái Cụ thể β ∈ {0, 0.5, 1, 5, 10, 20, 30} ν ∈{0, 1, 2, 4, 5, 6, 7} Sau lần kiểm thử, ta thấy đạt kết tốt với β = 20, ν = Theo công thức mô tả luật thay đổi trạng thái (4.21), (4.22), ta thấy hai công thức trọng vào lượng mùi cạnh (ngầm định số mũ 1) tới định lượng mẹo ϑ, cuối η Ta cố định hệ số γ ξ Các kết tính toán trình bày bảng Cột mã số liệu, cột thứ hai giá trị hàm mục tiêu tốt MACS – VRPMTW tính hai lần chạy, cột bốn, cột sáu cột tám giá trị hàm mục tiêu thu từ mẹo láng giềng gần dùng MACS – VRPMTW với β = 0, ν = β = 20, ν =0 Chú ý có nhiều cửa sổ thời gian, sử dụng kết hợp η ϑ với cho kết tốt hơn, trừ trường hợp với liệu đầu tiên, so sánh với kết thu sử dụng tách biệt hai đại lượng Bảng 5.1: Kết thực nghiệm Bộ liệu Láng giềng gần 1303 1296 1381 1385 1099 1076 1120 1080 MACS VRPMTW β=20, ν=2 761 727 727 692 807 770 798 736 MACS VRPMTW β=0, ν=2 1292 760 1366 1376 1043 1101 1123 1093 MACS VRPMTW β=20, ν=0 761 727 727 692 807 770 1123 1093 80 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 1177 1326 1301 1308 1351 1286 1285 1258 1357 1192 1173 1206 1307 1291 1264 1342 1108 1103 1210 1152 2048 2070 2125 2030 1752 2159 1891 1869 1741 2095 2066 2214 2016 2325 2063 2052 2180 1940 1944 1894 1464 2015 878 905 808 883 889 886 842 912 806 839 804 859 866 848 852 881 841 825 838 751 1215 1055 1012 1081 1111 1194 1074 1189 1235 1327 1017 1332 1238 1378 1174 1323 1126 1351 1383 1189 1117 1237 878 905 1263 1299 1336 1277 1272 1229 1164 1183 1164 1188 1301 1282 1240 1329 1094 1086 1201 1130 1982 2017 2072 2013 1830 1590 1809 1816 1731 2060 2013 2162 1989 1849 2045 1999 1641 1890 1926 1764 1335 1962 1158 1263 1263 1299 1336 1277 1272 1229 1164 944 1164 1188 1301 1282 1240 1329 1094 1086 1201 838 1210 1265 1012 1260 1194 2107 1108 1202 1731 2060 2013 2162 1989 2272 1635 1999 2128 1890 1926 1764 1295 1592 81 51 52 53 54 55 56 2188 2162 2115 2049 1777 1807 1079 1171 1404 1265 1136 1260 2058 1821 1843 1996 1725 1754 2058 2032 1574 1996 1725 1754 Vì thời điểm tại, chưa có nhiều giải thuật cho VRPMTW liệu chuẩn, nhiên từ nghiên cứu kết tính toán đây, ta thấy bước đầu giới thiệu độ đo mẹo ϑ kết hợp sử dụng với giá trị η có ảnh hưởng tương đối lớn đến hiệu giải thuật, cho phép giảm tỷ lệ lỗi liệu xem xét Đây ý tưởng tảng để từ ta nghiên cứu mở rộng lớp toán VRPMTW sử dụng siêu mẹo ACO, ví dụ ta mở rộng lai MACS – VRPMTW với thủ tục tìm kiếm cục so sánh hiệu giải thuật với cách tiếp cận khác 82 5.2 Kết luận VRP lớp toán tối ưu NP – khó nhiều nhà nghiên cứu quan tâm, đưa cách tiếp cận giải toán Một số dạng VRP toán VRP với hạn chế thời gian (VRPTW) định nghĩa toán tối thiểu hóa chi phí số xe hàng giống phân phối hàng hóa từ kho hàng tới tập khách hàng thỏa mãn khung thời gian ràng buộc dung lượng Mục tiêu toán thường tối thiểu hóa tổng chiều dài hành trình VRPTW nhiều nhà nghiên cứu đưa giải thuật từ mẹo xác đến siêu mẹo để giải quyết, có siêu mẹo ACO Gambardella đồng nghiệp (MACS – VRPTW) thành công Siêu mẹo ACO dựa hoạt động tìm tha thức ăn tổ kiến thực tế từ nghiên cứu tập kiến nhân tạo phối hợp hoạt động với để tìm lời giải cho toán tối ưu cách trao đổi thông tin thông qua vệt mùi để lại cạnh đồ thị Một biến thể VRPTW VRPMTW đề xuất nghiên cứu báo cáo VRPMTW, khách hàng phép yêu cầu phục vụ nhiều lần nhiều cửa sổ thời gian, xe không giống dung lượng Luận văn ứng dụng siêu mẹo ACO để giải toán VRPMTW đưa giải thuật MACS – VRPMTW Giải thuật lấy ý tưởng từ giải thuật Gambardella, bao gồm hai bầy kiến thực tối thiểu hóa đồng thời hai hàm mục tiêu số lượng xe sử dụng tổng chi phí Cài đặt thử nghiệm MACS – VRPMTW viết ngôn ngữ C++ Qua việc cài đặt thử nghiệm, thấy giải thuật cho kết tốt với liệu kiểm thử Tuy nhiên tính đến nay, chưa có nhiều giải thuật đề xuất cho VRPMTW, so sánh với mẹo láng giềng gần Chương trình cài đặt chạy máy cài hệ điều hành Windows Linux Một số kết đạt được: Về lý thuyết: - Tìm hiểu toán lộ trình xe hàng nói chung toán lộ trình xe hàng với hạn chế thời gian nói riêng cách chi tiết - Tìm hiểu phương pháp có để giải toán VRP với hạn chế thời gian - Nghiên cứu giải thuật tối ưu hóa bầy kiến, giải thuật bầy kiến thành công - Nghiên cứu, áp dụng giải thuật đa bầy kiến để giải toán VRP với đa khung thời gian 83 Về thực nghiệm: - Thiết kế cài đặt giải thuật MACS để giải VRPMTW - Đưa liệu thử nghiệm từ 56 liệu chuẩn Solomon - Thử nghiệm chương trình liệu đề xuất, qua so sánh kết đạt với kết mẹo láng giềng gần nhất, từ đánh giá hiệu thuật toán Hướng phát triển: - Tiến hành thử nghiệm liệu có số khách hàng lớn, lớn 15 cửa sổ thời gian, nhiều loại xe… - Tiếp tục nghiên cứu để đưa liệu chuẩn cho lớp toán VRPMTW - Phát triển thuật toán để giải biến thể phức tạp hơn, ví dụ có nhiều kho hàng, dạng khác toán VRP - Nghiên cứu, áp dụng giải thuật vào thực việc phân phối hàng hóa cho nhà máy, xí nghiệp thực tế Cuối cùng, với thời gian trình độ hạn chế, luận văn không tránh khỏi thiếu sót Rất mong nhận bảo góp ý thầy cô bạn để luận văn hoàn thiện hơn, sau triển khai áp dụng thuật toán vào thực tế 84 PHỤ LỤC Cấu trúc liệu Mỗi liệu gồm hai phần - Phần đầu chứa thông tin phương tiện vận chuyển khách hàng - Phần thứ hai chứa thông tin tham số khởi tạo #instance format: number of nodes number of types of vehicles number of time windows per customer CustNo demand type of vehicle maximum number of visits required time windows matrix of distances capacity of the vehicles #instance generation parameters: NAME: SEED: CLUSTERS: DEMDISTRIBUTION: MIN DEMAND: MAX DEMAND: MIN TIME WINDOWS: MAX TIME WINDOWS: MIN DURATION (TIME WINDOW): MAX DURATION (TIME WINDOW): MAX SERVICES REQUIRED: EARLIEST START OF TIME WINDOWS (EACH DAY): LATEST END OF TIME WINDOWS (EACH DAY): NODESPERCIRCLE: TOTNODES: number of nodes: số khách hàng number of types of vehicles: số loại xe maximum number of time windows per customer: số khung thời gian nhiều khách hàng có CustNo: số hiệu khách hàng, kho hàng tương ứng với CustNo = demand: số lượng hàng hóa yêu cầu type of vehicle: số hiệu loại xe cần để phục vụ khách hàng number of visits required: số lần khách hàng yêu cầu phục vụ 85 time windows: khung thời gian để phục vụ khách hàng matrix of distances: ma trận khoảng cách capacity of the vehicles: trọng tải xe hàng NAME: tên liệu SEED: khoảng sinh số ngẫu nhiên CLUSTERS: liên cung DEMDISTRIBUTION: cách phân bố khách hàng (đều/không đều) MIN DEMAND: lượng hàng yêu cầu tối thiểu MAX DEMAND: lượng hàng yêu cầu nhiều có MIN TIME WINDOWS: số lượng khung thời gian tối thiểu MAX TIME WINDOWS: số lượng khung thời gian nhiều có MIN DURATION (TIME WINDOW): độ rộng tối thiểu khung thời gian MAX DURATION (TIME WINDOW): độ rộng tối đa khung thời gian MAX SERVICES REQUIRED: số dịch vụ nhiều yêu cầu EARLIEST START OF TIME WINDOWS (EACH DAY): thời điểm bắt đầu sớm khung thời gian (mỗi ngày) LATEST END OF TIME WINDOWS (EACH DAY): thời điểm kết thúc sớm khung thời gian (mỗi ngày) NODESPERCIRCLE: số nút liên cung TOTNODES: tổng số nút Để chạy chương trình, ta vào cửa sổ Command prompt, chuyển tới thư mục chứa tệp chương trình chạy, gõ tên tệp chạy dấu nhắc lệnh cộng với số lựa chọn sau: -i InputFile [-o OutputFile] [-n NumberOfTries] [-s RandomSeed] [-t TimeLimit] [-c1 FirstCoeffNN] [-c2 SecondCoeffNN] [-c3 ThirdCoeffNN] [-ls NumberOfSwaps] [-r RandomSwap] [-ST ServiceTime] [-d NumberOfDepots] Trong tùy chọn trên, bắt buộc phải nhập tên tệp chứa liệu (InputFile), tham số khác tùy chọn, ví dụ: -i vrp_1_01_01 -o 01.txt -n Với vrp_1_01_01 tên tệp liệu, 01.txt tên tệp kết quả, số lần chạy Nội dung file kết 01.txt sau: 86 Parameter-settings: Input file vrp_1_01_01 Number of tries Seed 1259307359 Time limit 10 First Coefficient Nearest Neighbor Second Coefficient Nearest Neighbor Third Coefficient Nearest Neighbor Service Time (minutes) Number Of Swaps tryed 20 Use of Random Swap Local Search 0.5 0.25 0.25 AS Specific Parameters: Colony size Value of parameter Q Global update Rule pheromone value 0.1 Pheromone exponent value Heuristic eta exponent value Heuristic theta exponent value Local update rule pheromone value 0.3 Exploitation rate 0.8 Utilization of local search (1=yes, 0=no) Length of the nearest neighbor list: #nodes / begin try best 1960 depots time 0.000000 ACS-TIME Solution: 1960.000000 Depots: Time: 500720.000000 end try Final solution: 1960.000000 Depots: time: 0.000000 Tot: 6001960.000000 Depots: #sequence of 50 customers and depots: cod tw startTW endTW startService v 0 0.000000 7200.000000 426.810000 0 43 438.000000 685.000000 438.000000 479.000000 764.000000 479.000000 20 504.000000 816.000000 504.380000 35 429.000000 830.000000 528.380000 10 486.000000 830.000000 557.080000 562.000000 828.000000 608.900000 13 461.000000 852.000000 619.390000 456.000000 858.000000 652.160000 28 615.000000 864.000000 673.380000 42 616.000000 898.000000 710.950000 663.000000 937.000000 729.500000 41 544.000000 946.000000 755.820000 21 525.000000 943.000000 787.410000 22 616.000000 940.000000 808.770000 12 689.000000 958.000000 840.230000 44 674.000000 982.000000 872.060000 0 0.000000 7200.000000 581.210000 30 588.000000 997.000000 588.000000 33 668.000000 999.000000 668.000000 710.000000 993.000000 710.000000 11 747.000000 988.000000 747.000000 qu 10 23 34 46 59 70 83 97 110 124 134 148 158 171 183 195 10 23 35 49 87 18 49 29 27 46 26 23 34 32 24 16 38 17 31 15 39 14 25 48 40 19 36 45 47 37 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 645.000000 809.000000 769.000000 795.000000 808.000000 793.000000 781.000000 768.000000 828.000000 856.000000 805.000000 844.000000 0.000000 866.000000 884.000000 756.000000 0.000000 1908.000000 1990.000000 2087.000000 2142.000000 2130.000000 2170.000000 2263.000000 2295.000000 0.000000 3380.000000 3390.000000 3435.000000 3604.000000 3654.000000 0.000000 4870.000000 1062.000000 1054.000000 1042.000000 1068.000000 1072.000000 1096.000000 1087.000000 1130.000000 1120.000000 1139.000000 1127.000000 1140.000000 7200.000000 1140.000000 1140.000000 1140.000000 7200.000000 2258.000000 2331.000000 2415.000000 2428.000000 2463.000000 2578.000000 2580.000000 2580.000000 7200.000000 3663.000000 3790.000000 3793.000000 3884.000000 4011.000000 7200.000000 5156.000000 772.210000 809.000000 868.530000 879.250000 902.060000 908.350000 929.410000 945.520000 979.720000 989.020000 1010.770000 1029.880000 837.760000 866.000000 885.910000 916.310000 1878.430000 1908.000000 1990.000000 2087.000000 2142.000000 2177.900000 2205.070000 2263.000000 2316.920000 3335.560000 3380.000000 3427.130000 3503.400000 3604.000000 3654.000000 4841.480000 4870.000000 0 0 1 1 1 1 2 0 2 2 2 1 1 0 63 76 86 96 106 118 131 144 158 171 184 198 14 24 38 12 26 38 48 61 74 84 94 10 21 35 45 57 10 88 TÀI LIỆU THAM KHẢO [1] Paolo Toth, Daniele Vigo – The Vehicle Routing Problem, Society for Industrial and Applied Mathematics, Philadelphia, ISBN: 0-89871-579-2, 2000 [2].Marco Dorigo, Thomas Stützle – Ant Colony Optimization, MIT Press, Massachusetts Institute of Technology, Cambridge, ISBN: 0-262-04291-3, 2004 [3] M Dorigo and L M Gambardella, Ant colonies for the traveling salesman problem, BioSystems, Vol 43 (1997), pp 73–81 [4] M Dorigo and L M Gambardella, Ant colony system: a cooperative learning approach to the traveling salesman problem, IEEE Transaction on Evolutionary Computation, Vol (1) (1997), pp 53–66 [5] L M Gambardella, E Taillard and G Agazzi, MACS-VRPTW: a multiple ant colony system for vehicle routing problem with time windows, in New Idea in Optimization, D Corne, M Dorigo and F Glover (editors), McGraw-Hill, 1999 [6] K C Tan, L H Lee, K Q Zhu, Heuristic Methods for Vehicle Routing Problem with Time Windows, 1999 [7] Kirkpatrick, S., C.D Gelatt Jr and M.P Vechi, Optimization by Simulated Annealing Science, 1983 [8] Osman, I.H., Meta – strategy Simulated Annealing and Tabu Search Alogirithms for the Vehicle Routing Problem, Annuals Operations Research 41 (1993) [9] Holland, J H., Adaptation in Natural and Artificial Systems University of Michigan Press, Ann Arbor, 1975 [10] D Favaretto, E Moretti and P Pellegrini, Ant colony system for variants of traveling salesman problem with time windows, Technical Report, Applied Mathematics Department of Ca’ Foscari University of Venice, No 120/2004, 2004, Venice [11] D Favaretto, E Moretti and P Pellegrini, Ant colony system for a VRP with multiple time windows and multiple visits, Technical Report, Applied Mathematics Department of Ca’ Foscari University of Venice, No 3825/E I30123, 2007, Venice Italy [12] Nguyễn Đức Nghĩa, Nguyễn Tô Thành, Toán rời rạc NXB Giáo dục, 1997 [13] Nguyễn Đức Nghĩa Tối ưu hóa NXB Giáo dục, 1996 [14] B Bullnheimer, R F Hartl, C Strauss, An Improved Ant System Algorithm for the Vehicle Routing Problem, Technical Report POM-10/97, 89 Institute of Management Science, University of Vienna, Austria, 1997 Accepted for publication in Anuals of Operations Research [15] M Dorigo, L M Gambardella, Ant Colonies for the Traveling Salesman Problem, BioSystems 43, 1997b, 73-81 [16] M Dorigo, L M Gambardella, Ant Colony System : A Cooperative Learning Approach to the Travelling Salesman Problem, TR/IRIDIA/1996 – 5, Belgium [17] Chengming Qi, Yunchuan Sun, An Improved Ant Colony Algorithm for VRPTW, 2008 IEEE [18] Solomon, M.M., Algorithms for Vehicle Routing and Scheduling Problems with Time Window Constraints Operations Research 35(2), 1987 [19] Osman, Ibrahim H and N Christofides, Simulated Annealing and Descent Algorithms for Capactated Clustering Problem Research Report, Imperial College, University of London, 1989 [20] M L Fisher, Optimal solution of vehicle routing problems using minimum K-trees, Operations Research, Vol 42 (1994), pp 626–642 ... VRP với hạn chế dung lượng Bài toán VRP với hạn chế khoảng cách Bài toán người du lịch Bài toán VRP với hạn chế thời gian Bài toán VRP nhập xuất hàng kết hợp Bài toán VRP nhập xuất hàng đồng thời. .. xuất hàng đồng thời Bài toán VRP không đối xứng Bài toán VRP đối xứng Bài toán VRP với hạn chế trọng tải khoảng cách Bài toán VRP với đa khung thời gian Giải thuật di truyền Bài toán định tuyến xe... phiên VRP với hạn chế trọng tải xe (CVRP - Capacitated VRP) , VRP với hạn chế thời gian (VRPTW), VRP nhập xuất hàng kết hợp (VRPB), VRP nhập xuất hàng đồng thời (VRPPD) Hình 1.1: Các lớp toán VRP

Ngày đăng: 27/07/2017, 20:27

Từ khóa liên quan

Mục lục

  • TRANG BÌA

  • LỜI CAM ĐOAN

  • LỜI CẢM ƠN

  • MỤC LỤC

  • LỜI NÓI ĐẦU

  • CÁC TỪ VIẾT TẮT

  • DANH SÁCH CÁC HÌNH

  • DANH SÁCH CÁC BẢNG

  • Chương 1

  • Chương 2

  • Chương 3

  • Chương 4

  • Chương 5

  • PHỤ LỤC

  • TÀI LIỆU THAM KHẢO

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan