HỆ hỗ TRỢ QUYẾT ĐỊNH đề tài phân tích tối ưu

78 24 0
HỆ hỗ TRỢ QUYẾT ĐỊNH đề tài phân tích tối ưu

Đ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

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN TOÁN ỨNG DỤNG VÀ TIN HỌC - oOo - BÁO CÁO MÔN HỌC: HỆ HỖ TRỢ QUYẾT ĐỊNH Đề tài: Phân tích tối ưu Giảng viên hướng dẫn: TS Lê Chí Ngọc Nhóm sinh viên thực hiện: Nguyễn Thị Hằng 20161384 Phạm Thị Ngà 20162885 Trần Hà Trang 20164181 Nguyễn Thị Thu Uyên 20164595 Hà Nội – 2020 MỤC LỤC DANH SÁCH CÁC HÌNH VẼ QUY HOẠCH TUYẾN TÍNH (LINEAR PROGRAMMING – LP) 1.1 Giới thiệu quy hoạch tuyến tính ví dụ thực tế 1.2 Quy hoạch tuyến tính 10 1.2.1 Mô hình tốn học 10 1.2.2 Bài tốn quy hoạch tuyến tính dạng chuẩn tắc 10 1.2.3 Bài toán quy hoạch tuyến tính dạng tắc 11 Một số phương pháp giải toán QHTT 12 1.3 1.3.1 Phương pháp hình học 12 1.3.2 Thuật tốn đơn hình: 14 1.4 Mô tả vấn đề phân bổ (Allocation Problem) 21 1.5 Xác định vấn đề hỗn hợp sản phẩm (The product-mix problem) 22 QUY HOẠCH NGUYÊN 25 2.1 Mơ hình tốn học 25 2.2 Một số ví dụ thực tế 26 2.3 Phương pháp giải toán quy hoạch nguyên 29 2.3.1 Phương pháp nhánh cận 29 2.3.2 Giải thuật Gomory 32 TỐI ƯU TỔ HỢP 34 3.1 Phát biểu toán 34 3.2 Các ví dụ điển hình 34 3.2.1 Bài toán người du lịch (Traveling Salesman Problem) 34 3.2.2 Bài toán túi (Knapsack Problem) 35 3.3 Một số phương pháp 37 3.3.1 Duyệt toàn 37 3.3.2 Đánh giá nhánh cận 37 3.3.3 Tham lam 39 TỐI ƯU ĐA MỤC TIÊU 40 4.1 Giới thiệu tốn số ví dụ thực tế 40 4.2 Mơ hình tốn học 44 4.3 Phương pháp giải 44 4.3.1 Phương pháp 𝜀 − 𝑟à𝑛𝑔 𝑏𝑢ộ𝑐 44 4.3.2 Phương pháp tổng trọng số 46 KỸ THUẬT (PHƯƠNG PHÁP) VÉT CẠN 48 5.1 Ý tưởng 48 5.2 Một số phương pháp tìm kiếm 50 5.2.1 Kỹ thuật phân tích: 51 5.2.2 Tìm kiếm mù (Blind searching) 53 5.2.3 Tìm kiếm Heuristic (Heuristic Searching) 53 ĐỘ PHỨC TẠP THUẬT TOÁN 55 6.1 Tổng quan phân tích giải thuật số khái niệm liên quan 55 6.2 Độ phức tạp thuật toán xác định thông qua: độ phức tạp không gian, độ phức tạp thời gian 56 THUẬT TOÁN XẤP XỈ 61 7.1 Bài toán NP 61 7.2 Giới thiệu giải thuật xấp xỉ 61 7.2.1 Định nghĩa 62 7.2.2 Một số kỹ thuật 62 7.3 Ví dụ 62 METAHEURISTIC 65 8.1 Giới thiệu 65 8.2 Các giải thuật 65 8.2.1 Giải thuật luyện thép (SA – Simulated Annealing) 65 8.2.2 Giải thuật di truyền (GA – Genetic Algorithm) 68 8.2.3 Giải thuật đàn kiến (ACO – Ant Colony Optimization Algorithm) 73 8.2.4 Giải thuật tìm kiếm Tabu (TS - Tabu Searching) 75 TÀI LIỆU THAM KHẢO 78 DANH SÁCH CÁC HÌNH VẼ Hình Mơ hình tốn học ví dụ 1.1 Hình Thuật tốn hình học giải ví dụ 1.3.1.3 Hình Mơ tả hình học trường hợp thuật tốn đơn hình Hình Mơ tả hình học trường hợp thuật tốn đơn hình Hình Mơ tả hình học trường hợp thuật tốn đơn hình Hình Minh hoạ excel giải toán hỗn hợp sản phẩm Hình Bài tốn túi Hình Ví dụ thuật tốn vét cạn Hình Một số phương pháp tìm kiếm Hình 10 Sơ đồ kỹ thuật phân tích Hình 11 𝑓(𝑛) ∈ 𝑂(𝑔(𝑛)) Hình 12 f(n) ∈ Ω(g(n)) Hình 13 f(n) ∈ Ө(g(n)) Hình 14 Sơ đồ thuật tốn di truyền điển hình QUY HOẠCH TUYẾN TÍNH (LINEAR PROGRAMMING – LP) Quy hoạch tuyến tính (LP) đề cập đến nhóm kỹ thuật tối ưu hóa tốn học chứng minh hiệu việc giải vấn đề phân bổ tài nguyên, đặc biệt vấn đề tìm thấy hệ thống sản xuất công nghiệp Các phương pháp QHTT kỹ thuật đại số dựa loạt phương trình bất đẳng thức giới hạn vấn đề sử dụng để tối ưu hóa biểu thức toán học gọi hàm mục tiêu Hàm mục tiêu ràng buộc đặt cho vấn đề phải có tính xác định thể dạng tuyến tính Những hạn chế giới hạn số lượng vấn đề xử lý trực tiếp, kể từ giới thiệu QHTT vào cuối năm 1940, nhiều tiến thực để điều chỉnh phương pháp cho vấn đề phức tạp Trong LP, tất mối quan hệ biến tuyến tính Nó sử dụng rộng rãi DSS xem ví dụ để hiểu rõ 1.1 Giới thiệu quy hoạch tuyến tính ví dụ thực tế LP có lẽ mơ hình tối ưu hóa tiếng Nó liên quan đến việc phân bổ nguồn lực tối ưu số hoạt động cạnh tranh • Ví dụ 1.1: (Blending or Mixing Problem) Chúng ta xem xét ví dụ MBI Corporation- nhà sản xuất chun máy tính, cần đưa định: Cơng ty sản xuất máy tính vào tháng nhà máy Boston? MBI xem xét hai loại máy tính: CC-7, địi hỏi 300 ngày lao động 10000 la cho chi phí vật liệu; CC-8, cần 500 ngày lao động 15000 la cho chi phí vật liệu Đóng góp lợi nhuận máy CC-7 8000 đô la,trong máy CC-8 12000 la Nhà máy có cơng suất 200000 ngày làm việc tháng, ngân sách vật chất triệu la tháng Tiếp thị địi hỏi có 100 đơn vị CC-7 200 đơn vị CC-8 sản xuất tháng Vấn đề tối đa hóa lợi nhuận cơng ty cách xác định có đơn vị CC-7 số lượng đơn vị CC-8 nên sản xuất tháng Lưu ý rằng: môi trường giới thực, vài tháng để có liệu báo cáo vấn đề thu thập liệu, người định không nghi ngờ thật cách cấu trúc mơ hình giải Các cơng cụ dựa web để thu thập liệu giúp đỡ Mơ hình: Gọi 𝑥1 số đơn vị CC-7, 𝑥2 số đơn vị CC-8 sản xuất tháng Hàm tổng lợi nhuận công ty: 𝑍(𝑥) = 8000𝑥1 + 12000𝑥2 Mục tiêu toán tối đa hóa lợi nhuận, tức giải tốn: max 𝑍(𝑥) = 8000𝑥1 + 12000𝑥2 Trong đó, theo đề ta có rang buộc sau: ▪ Hạn chế ngày lao động: 300𝑥1 + 500𝑥2 ≤ 200000 (ngày) ▪ Hạn chế ngân sách: 10000𝑥1 + 15000𝑥2 ≤ 8000000 (đô la) ▪ Yêu cầu tiếp thị: 𝑥1 ≥ 100 (đơn vị); 𝑥2 ≥ 200 (đơn vị) Vậy ta có mơ hình tốn: max 𝑍(𝑥) = 8000𝑥1 + 12000𝑥2 vđk: 300𝑥1 + 500𝑥2 ≤ 200000 10000𝑥1 + 15000𝑥2 ≤ 8000000 𝑥1 ≥ 100 𝑥2 ≥ 200 Disision variables Mathematical (logical) relationships 𝑥1 số đơn vị CC-7 𝑥2 số đơn vị CC-8 Tối đa hóa hàm lợi nhuận Z có ràng buộc Result variable Tổng lợi nhuận: 𝑍(𝑥) = 8000𝑥1 + 12000𝑥2 Constraints (uncontrollable) 300𝑥1 + 500𝑥2 ≤ 200000 10000𝑥1 + 15000𝑥2 ≤ 8000000 𝑥1 ≥ 100 𝑥2 ≥ 200 Hình Mơ hình tốn học ví dụ 1.1 • Ví dụ 1.2: (Bài tốn lập kế hoạch sản xuất) Cần sản xuất n sản phẩm khác m nguyên liệu khác Biết: ▪ 𝑎𝑖𝑗 : đơn vị sản phẩm thứ 𝑖 cần thiết để làm đơn vị sản phẩm loại 𝑗; 𝑖 = 1, … , 𝑚; 𝑗 = 1, … , 𝑛 ▪ 𝑏𝑖 : trữ lượng loại nguyên liệu thứ 𝑖; 𝑖 = 1, … , 𝑚 ▪ 𝑐𝑗 : giá bán đơn vị sản phấm loại 𝑗; 𝑗 = 1, … , 𝑛 Câu hỏi: Nên sản xuất loại đơn vị để doanh thu lớn (max) Lời giải: Kí hiệu: Gọi 𝑥𝑗 số đơn vị sản phẩm loại 𝑗 mà ta cần sản xuất; 𝑗 = ̅̅̅̅̅ 1, 𝑛 Ta có hàm doanh thu biểu diễn sau: (𝑥) = 𝑐1 𝑥1 + ⋯ + 𝑐𝑛 𝑥𝑛 = 𝑐, 𝑥 Với 𝑐 = (𝑐1 , … , 𝑐𝑛 ); 𝑥 = (𝑥1 , … , 𝑥𝑛 ); 𝑎𝑖1 𝑥1 + 𝑎𝑖2 𝑥2 + ⋯ + 𝑎𝑖𝑛 𝑥𝑛 ≤ 𝑏𝑖 (𝑖 = 1, … , 𝑚); 𝑥𝑗 ≥ 𝑗 = 1, … , 𝑛 Kí hiệu: 𝑎𝑖 = (𝑎𝑖1 , 𝑎𝑖2 , … , 𝑎𝑖𝑛 )𝑇 Vậy ta có mơ hình tốn: max (𝑥) = 𝑐, 𝑥 vđk: 𝑎𝑖 , 𝑥 ≤ 𝑏𝑖 ; 𝑖 = 1, … , 𝑚 𝑥≥0 Ta nói tốn QHTT n ẩn tìm 𝑚𝑎𝑥 hàm mục tiêu 1.2 Quy hoạch tuyến tính 1.2.1 Mơ hình tốn học 𝑓(𝑥) = 𝑐, 𝑥  𝑣đ𝑘 𝑥𝑋 , (LP) Trong đó: 𝑐 ∈ 𝑅𝑛 , 𝑋 𝑅𝑛 tập lồi đa diện Nhắc lại định nghĩa tập lồi đa diện: ta nói 𝑃 𝑅𝑛 tập lồi đa diện 𝑙 𝑃 = ⋂{𝑥 ∈ 𝑅𝑛 |𝑎𝑖 , 𝑥 ≥ 𝑏𝑖 } 𝑖=1 Hay giao số hữu hạn nửa khơng gian đóng 1.2.2 Bài tốn quy hoạch tuyến tính dạng chuẩn tắc 𝑓(𝑥) = 𝑐, 𝑥 vđk 𝑥 ∈ 𝑋 = {𝑥𝑅𝑛 |𝐴𝑥 ≥ 𝑏, 𝑥 ≥ 0}, Trong đó: 𝐴 ∈ 𝑅𝑚×𝑛 , 𝑏 𝑅𝑚 Gọi 𝑎𝑖 , 𝑖 = 1, … , 𝑚 hàng 𝐴, 𝑏 = (𝑏1 , … , 𝑏𝑚 )𝑇 𝑓(𝑥) = 𝑐, 𝑥 v.đ.k: 𝑎𝑖 , 𝑥 ≥ 𝑏𝑖 , 𝑖 = 1, … , 𝑚: m ràng buộc 𝑥𝑗 ≥ 0, 𝑗 = 1, … , 𝑛: n ràng buộc dấu 10 • 𝑒 số vùng tốt số 𝑝 vùng chọn, 𝑒 vùng viết tắt 𝑒 − 𝑣ù𝑛𝑔 • 𝑛𝑒𝑝 số ong cử đến vùng thuộc 𝑒 − 𝑣ù𝑛𝑔 • 𝑛𝑠𝑝 số ong cử đến vùng thuộc 𝑝− 𝑒 vùng chọn lại; 𝑝− 𝑒 vùng viết tắt pe-vùng • n− p vùng viết tắt np-vùng 64 METAHEURISTIC 8.1 Giới thiệu Metaheuristic phương pháp heuristic (phương pháp tìm kiếm phần) cao cấp để giải tốn tìm kiếm tối ưu, cung cấp phương án đủ tốt trường hợp không đầy đủ hay thông tin khơng hồn hảo hạn chế khả tính tốn Metaheuristic thực việc tìm kiếm lời giải không gian hẹp (so với không gian gốc lớn để tìm kiếm) Nó đưa vài giả thuyết toán giải Nói chung, metaheuristic khơng đưa lời giải tối ưu, thay vào thơng thường đưa lời giải tối ưu xác suất Nó có khả tìm phương án tốt với tính tốn so với phương pháp truyền thống Những ví dụ meteheuristic bao gồm giải thuật luyện thép (SA – Simulated Annealing), giải thuật di truyền (GA – Genetic Algorithm), giải thuật đàn kiến (ACO – Ant Colony Optimization Algorithm), tìm kiếm Tabu (Tabu Search),… 8.2 Các giải thuật 8.2.1 Giải thuật luyện thép (SA – Simulated Annealing) Giải thuật luyện thép (SA) Kirkpatrick, Gelatt Vecchi đề xuất năm 1983, giải thuật Metaheuristic tìm kiếm địa phương phổ biến việc giải toán tối ưu tổ hợp rời rạc, phương án tối ưu hóa áp dụng để tìm kiếm tối ưu toàn cục hàm mục tiêu tránh tối ưu hóa địa phương việc chấp nhận lời giải tốt thông qua xác suất phụ thuộc vào nhiệt độ T Thuật tốn SA dựa q trình nóng chảy làm mát để đạt cấu trúc bền vững vật rắn, q trình mô tả qua hai giai đoạn sau: 65 • Quá trình đầu: Tăng nhiệt độ chất rắn lên nhiệt độ cao để chất rắn nóng chảy • Quá trình sau: giảm nhiệt độ chất rắn đạt cấu trúc bền vững, lượng phần tử trạng thái nhỏ Giải thuật SA xuất phát từ điểm ngẫu nhiên 𝑋0 khơng gian tìm kiếm tốn tối ưu hóa nhiệt độ ban đầu 𝑇0 cao Nhiệt độ ban đầu xác lập pha khởi tạo cho chuyển dịch trạng thái chấp nhận Các điểm lân cận 𝑗 chọn cách ngẫu nhiên để trở thành điểm 𝑖 cho bước lặp Điểm có hàm giá trị 𝐹𝑗 nhỏ giá trị hàm giá thời điểm 𝐹𝑖 ln chấp nhận điểm có giá trị hàm giá lớn chấp nhận với xác suất 𝑃{𝑋𝑘 =𝑗|𝑋𝑘−1=𝑖} = 𝑒 ∆𝐹𝑖,𝑗 ) 𝑇𝑘 ( (1) Trong ∆𝐹𝑖,𝑗 = 𝐹𝑗 − 𝐹𝑖 , 𝑇𝑘 – nhiệt độ luyện Khi nhiệt độ 𝑇𝑘 cao, xác suất tiến sát tới giá trị nên việc sinh số ngẫu nhiên 𝑝 trog khoảng [0,1] hầu hết thỏa mãn: 𝑝 < 𝑝{𝑋𝑘 =𝑗|𝑋𝑘−1=𝑖} = 𝑒 ∆𝐹𝑖,𝑗 ) 𝑇𝑘 ( (2) Với điều kiện nhiệt độ 𝑇𝑘 cao nên trạng thái chuyển dịch chấp nhận Quá trình sản sinh điểm tìm kiếm việc sử dụng tiêu chuẩn (1) (được gọi tiêu chuẩn Metropolis) tiếp tục cân nhiệt thiết lập nhiệt độ Nhiệt độ sau giảm xuống theo phương thức định trước Hệ thống lại đạt cân nhiệt độ tiếp 66 tục lặp lại nhiệt độ đạt tới giá trị, khơng chuyển dịch trạng thái chấp nhận Tại điểm này, hệ thống coi đóng băng giải thuật kết thúc trả điểm tìm kiếm có giá trị hàm giá nhỏ Sơ đồ tổng thể giải thuật SA diễn tả sau: Bước 1: - Khởi động điểm tìm kiếm 𝑋1 = 𝑋0 cách ngẫu nhiên - Khởi động nhiệt độ ban đầu 𝑇𝑘 = 𝑇0 cao để dịch chuyển chấp nhận - Đặt lời giải giải thuật điểm xuất phát: 𝑋𝑏𝑒𝑠𝑡 = 𝑋𝑖 Bước 2: - Tạo điểm tìm kiếm 𝑋𝑗 từ điểm tìm kiếm 𝑋𝑖 nhiệt độ 𝑇𝑘 - Tính độ chênh lệch hàm giá ∆𝐹𝑖,𝑗 = 𝐹(𝑋𝑗 ) − 𝐹(𝑋𝑖 ) Bước 3: - Nếu (∆𝐹𝑖,𝑗 ≤ 0) 𝑝[0,1] < 𝑒 ∆𝐹𝑖,𝑗 ) 𝑇𝑘 ( ) thay lời giải 𝑋𝑖 = 𝑋𝑗 ; - Nếu 𝐹(𝑋𝑖 ) < 𝐹(𝑋𝑏𝑒𝑠𝑡 ) thay lời giải 𝑋𝑏𝑒𝑠𝑡 = 𝑋𝑖 ; - Lặp lại Bước cho đế đạt cân nhiệt nhiệt độ 𝑇𝑘 Bước 4: - Giảm nhiệt độ theo lịch trình luyện 𝑇𝑘+1 = giảm(𝑇𝑘 ) - Lặp lại Bước đạt điều kiện dừng - Trả lời giải 𝑋𝑏𝑒𝑠𝑡 Chú ý: 67 • Nhiệt độ 𝑇𝑘 cao nên điều kiện Bước ln chấp nhận 𝑋𝑗 ln chấp nhận để thay cho lời giải 𝑋𝑖 • Đối với tốn tối ưu tổ hợp, cân nhiệt đạt sau số lần định điểm tìm kiếm chấp nhận số lần thử nghiệm điểm tìm kiếm số đủ lớn định trước • Hàm giảm nhiệt độ tơi luyện giảm (𝑇𝑘 ) lịch trình tơi luyện 𝑇(𝑘) định Tùy theo giải thuật SA khác mà người ta xây dựng lịch trình tơi luyện khác Để đơn giả chọn 𝑇𝑘+1 = 𝑇0 𝛼 𝑘 𝛼 số < 𝛼 < 8.2.2 Giải thuật di truyền (GA – Genetic Algorithm) Nhà bác học Charles Darwin nêu lý thuyết tiến hóa tự nhiên loài vật, dựa tảng lý thuyết tiến hóa tự nhiên này, đến năm 1975 Holland phát triển ý tưởng vào hệ thống nhân tạo, ông áp dụng nguyên tắc để tối ưu hóa vấn đề xây dựng thuật tốn di truyền (GA) Hiện nay, GA xem công cụ mạnh mẽ để giải vấn đề tìm kiếm tối ưu tối ưu hóa phức tạp Các thuật toán di truyền phần marchine learning, không đảm bảo giải pháp thực tối ưu, thuật toán di truyền coi phương pháp heuristic Các thuật toán di truyền tập hợp quy trình tính tốn theo bước q trình tiến hóa sinh học, phát triển từ giải pháp hệ trước, cải thiện tốt có giải pháp tối ưu gần tối ưu Các thuật tốn di truyền (cịn gọi thuật tốn tiến hóa) thể tự tổ chức thích nghi theo cách tương tự sinh vật sinh học tuân theo quy luật tiến hóa sinh tồn Phương pháp cải thiện kết 68 cách tạo hệ (tức kết khả thi mới) qua việc sử dụng giải pháp tốt hệ với tư cách “cha mẹ” Việc tạo hệ đạt nhờ mơ sau q trình sinh sản sinh học, cá thể thực đột biến trao đổi chéo để tạo cá thể mối tốt Sự tương tự gen biến định, nhiễm sắc thể giải pháp tiềm sở cho thuật ngữ thuật toán di truyền Thuật toán di truyền Thuật toán di truyền quy trình lặp đại diện cho giải pháp đề xuất dạng chuỗi gen gọi nhiễm sắc thể đo khả tồn chúng hàm fitness Hàm fitness hàm mục tiêu (min max) Tương tự hệ sinh thái, giải pháp đề xuất kết hợp để tạo lần lặp thuật toán gọi hệ Bản thân trở thành giải pháp đề xuất Từ hệ cha mẹ cái, tập hợp đứa trẻ khỏe mạnh sống sót để trở thành cha mẹ sinh hệ Con tạo trình sinh sản di truyền: trao đổi chéo đột biến Cùng với cái, số giải pháp tốt chuyển sang hệ để bảo tồn giải pháp tốt đạt Một số định nghĩa: • Sinh sản: Thơng qua q trình sinh sản, thuật tốn di truyền tạo hệ giải pháp, chúng cải thiện cách chọn cha mẹ thỏa mãn hàm mục tiêu cho cha mẹ đóng góp vào q trình sinh sản • Trao đổi chéo: Thuật toán di truyền sử dụng chuối ký hiệu nhị phân để biểu thị nhiễm sắc thể (giải pháp tiềm năng) Sự trao đổi chéo có nghĩa chọn vị trí ngẫu nhiên chuỗi trao đổi 69 phân đoạn bên phải bên trái điểm với phân đoạn chuỗi khác để tạo cá thể • Đột biến: Đột biến thay đổi tùy ý nhiễm sắc thể, thường sử dụng để ngăn thuật toán bị kẹt nghiệm tối ưu địa phương Quá trình chọn ngẫu nhiên nhiễm sắc thể xác định ngẫu nhiên gen nhiễm sức thể sau đảo ngược giá trị (từ thành 1, từ thành 0), tạo gen nhiễm sắc thể cho hệ Xác suất xảy đột biến thường thấp (0.1%) • Elitism: Một khía cạnh quan trọng thuật tốn di truyền bảo tồn số giải pháp tốt để phát triển qua hệ Như vậy, đảm bảo kết thúc với giải pháp tốt Thuật tốn Bài tốn cần giải phải mơ tả trình bày theo cách phù hợp với thuật tốn di truyền, thơng thường, ta biểu diễn biến định qua chuỗi nhị phân Tiếp theo, biến định tính tốn thay vào hàm mục tiêu 70 Hình 13 Sơ đồ thuật tốn di truyền điển hình Cùng với hàm mục tiêu, ràng buộc định liệu giải pháp có khả thi hay khơng chứng minh Chỉ giải pháp khả thi giữ lại, giải pháp khơng khả thi lọc trước hịan thiện hệ giải pháp trình lặp Khi biểu diễn hoàn tất, giải pháp ban đầu tạo Hàm mục tiêu tính tốn cho giải pháp khả thi Các giải pháp xếp hạng dựa giá trị hàm mục tiêu, cá thể có gái trị hàm mục tiêu tốt đưa xác suất cao trình lựa chọ ngẫu nhiên 71 Một số giải pháp tốt chuyển sang hệ Một số bố mẹ xác định ngẫu nhiên tham gia vào việc tạo Số lượng giải pháp tiềm để tạo xác định quy mô quần thể, tham số tùy ý đặt trước tiến hóa giải pháp Sau hệ xây dựng, giải pháp đánh giá tạo quần thể cho số lần lặp Quá trình lặp tiếp tục thu giải pháp đủ tốt (khơng đảm bảo tối ưu), khơng có cải thiện xảy nhiều hệ đạt đến giới hạn thời gian Như đề cập, số tham số phải đặt trước thực hiên thuật toán di truyền, giá trị chúng phụ thuộc vào toán giải thường xác định thơng qua: • Số lượng quần thể ban đầu • Kích thước quần thể • Số lượng cha mẹ giữ cho hệ • Xác suất đột biến • Phân phối xác suất xảy điểm trao đổi chéo • Tiêu chí dừng (dựa thời gian, số lần lặp, cải tiến) • Số lần lặp tối đa (nếu tiêu chí dừng dựa thời gian) Đôi tham số đặt cố định, thay đổi cách có hệ thống thuật tốn chạy để có hiệu suất tốt 72 Các ứng dụng thuật toán di truyền Thuật toán di truyền cung cấp tập hợp heuristic tìm kiếm độc lập, hiệu ứng dụng rộng rãi, bao gồm: • Dynamic process control • Induction of optimization of rules • Mơ hành vi tiến hóa hệ sinh thái • Các cấu trúc kỹ thuật thiết kế phức tạp • Lập lịch • Vận chuyển định tuyến • Viễn thơng • Các tốn đồ thị • … 8.2.3 Giải thuật đàn kiến (ACO – Ant Colony Optimization Algorithm) Giải thuật đàn kiến (ACO) cách tiếp cận metaheuristic tương đối mới, giới thiệu Dorigo năm 1911 nghiên cứu ứng dụng rộng rãi cho tốn TƯTH khó Các thuật tốn ACO sử dụng kết hợp thơng tin kinh nghiệm (heuristic) học tăng cường qua vết mùi kiến nhân tạo để giải tốn TƯTH cách đưa tốn tìm đường tối ưu đồ thị cấu trúc tương ứng toán Phương pháp áp dụng rộng rãi để giải nhiều tốn khó hiệu trội chúng so với phương pháp mô tự nhiên khác chứng tỏ thực nghiệm 73 ❖ Từ kiến thực đến kiến nhân tạo Trên đường đi, kiến để lại chất hóa học gọi vết mùi dùng để đánh dấu đường Bằng cách cảm nhận vết mùi, kiến lần theo đường đến nguồn thức ăn kiến khác khám phá theo phương thức chọn ngẫu nhiên có định hướng theo nồng độ vết mùi để xác định đường ngắn từ tổ đến nguồn thức ăn Mô kiến tự nhiên, người ta dùng đa tác tử (multiagent) làm đàn kiến nhân tạo, kiến có nhiều khả kiến tự nhiên Mỗi kiến nhân tạo (về sau gọi kiến) có nhớ riêng, có khả ghi nhớ đỉnh thăm hành trình tính độ dài đường chọn Ngồi kiến trao đổi thơng tin có với nhau, thực tính tốn cần thiết, cập nhật mùi… ❖ Mơ tả thuật tốn ACO tổng quát Với điều kiện dừng (có thể số bước lặp thời gian chạy cho trước), người ta dùng đàn kiến 𝑚 thực lặp xây dựng lời giải đồ thị cấu trúc 𝐺 = (𝑉, 𝐸, 𝐻, 𝜏) Trong lần lặp, kiến chọn ngẫu nhiên đỉnh 𝑢𝑜 ∈ 𝐶𝑜 làm thành phần khởi tạo 𝑥𝑜 = {𝑢𝑜 } thực xây dựng lời giải theo thủ tục bước ngẫu nhiên Dựa lời giải tìm đàn kiến cập nhật mùi theo cách học tăng cường Bước 1: Khởi tạo tham số, ma trậ mùi, khởi tạo 𝑚 kiến Bước 2: Xây dựng lời giải kiến Bước 3: Thực cập nhật mùi cập nhật lời giải tốt thỏa mãn điều kiện kết thúc Bước 4: Đưa lời giải tốt 74 Chú ý, áp dụng phương pháp ACO cho tốn cụ thể, có yếu tố định hiệu thuật tốn: • Xây dựng đồ thị cấu trúc thích hợp • Chọn thơng tin heuristic • Chọn quy tắc cập nhật mùi 8.2.4 Giải thuật tìm kiếm Tabu (TS - Tabu Searching) Giải thuật tìm kiếm tabu (TS) kỹ thuật tối ưu hóa đề xuất Glover năm 1977 Ý tưởng giải thuật sử dụng bước chuyển lân cận để tìm lời giải khả thi Tại lần lặp, bước chuyển thực bước lời giải cải thiện nhiều Bước chuyển chấp nhận dẫn tới lời giải tồi khơng có lời giải lân cận tốt lời giải Một điểm giải thuật TS sử dụng nhớ thích nghi để ghi lại danh sách lời giải xem xét trước giải thuật bắt buộc phải chuyển sang lời giải khác nằm danh sách cấm (danh sách xem xét trước bị cấm vịng số vịng lặp tiếp theo) Các thành phần giải thuật gồm có: ❖ Hàm mục tiêu 𝐹(𝑥) đánh giá lời giải khả thi: hàm dùng để tính giá trị cho lời giải khả thi Giá trị hàm mục tiêu lớn hay nhỏ tùy thuộc vào yêu cầu cụ thể toán ❖ Một tập lời giải lân cận 𝑁(𝑥): lời giải khả thi có tập lời giải lân cận, tập có cách thực bước chuyển lân cận từ lời giải hành Tại lần lặp giải thuật, lời giải tốt muốn tìm số lời giải lân cận lời giải hành Do kích 75 thước tập tăng nhanh so với kích cỡ tốn,vì tìm lời giải tốt tập lân cận trở nên không khả thi phải duyệt toàn tập lân cận Trong giải thuật TS, thông thường xét tập tập lười giải lân cận, cách hạn chế số lời giải NV tập xét ❖ Danh sách cấm TL: danh sách ghi lại lời giải xem xét trước bị cấm số lần lặp Danh sách tổ chức hàng đợi, dnah sách đầy mà cần phải thêm vào lời giải lời giải danh sách giải phóng ❖ Chu kỳ cấm M: Khi lời giải tốt chọn, lời giải thêm vào danh sách cấm bị cấm sau số lần lặp liên tiếp Nếu sau số lần lặp liên tiếp mà lời giải không cải thiện danh sách cấm giải phóng ❖ Điều kiện kết thúc: Giải thuật dừng điều kiện kết thúc thỏa mãn Do giải thuật TS khơng có điểm dừng cụ thể, vịng lặp, lời giải lân cận chọn khơng lời giải Vì vậy, điều kiện kết thúc thường chọn sau số vòng lặp liên tiếp sau khoảng thời gian tính tốn mà lời giải khơng cải thiện Giải thuật tìm kiếm Tabu Bước 0: Khởi tạo lời giải 𝑥 cách ngẫu nhiên 𝑥𝑏𝑒𝑠𝑡 = 𝑥 Bước 1: - Sản sinh lời giải lân cận 𝑧 ∈ 𝑁(𝑥)\𝑇𝐿 - Nếu 𝐹(𝑧) < 𝐹(𝑥) 𝑦 = 𝑧 gán 𝑥𝑏𝑒𝑠𝑡 = 𝑦 𝐹(𝑦) < 𝐹(𝑥𝑏𝑒𝑠𝑡 ) chuyển sang Bước 76 Ngược lại, 𝑁(𝑥) = 𝑁(𝑥) ∪ {𝑧} - Lặp lại Bước số phần tử tập lân cận 𝑁(𝑥) = 𝑁𝑉 Bước 2: Tìm kiếm lời giải tốt tập lân cận 𝑁(𝑥) 𝑦 = 𝐴𝑟𝑔 {𝐹(𝑦)} 𝑦 ∈𝑁(𝑥) Bước 3: - Thay lời giải 𝑥 = 𝑦 cập nhật tất lời giải lân cận 𝑁(𝑥) vào danh sách cấm: 𝑇𝐿 = 𝑇𝐿 ∪ 𝑁(𝑥) - Nếu danh sách TL đầy giải phóng lời giải danh sách Bước 4: Lặp lại Bước M lần khơng tìm 𝑥𝑏𝑒𝑠𝑡 giải phóng tồn danh sách cấm Bước 5: Lặp lại từ Bước thỏa mãn điều kiện dừng 77 TÀI LIỆU THAM KHẢO Business Intelligence and Analytics Systems for Decision Support, TENTH EDITION, Ramesh Sharda • Dursun Delen • Efraim Turban Giáo trình phương pháp tối ưu, Nguyễn Thị Bạch Kim, 2008 78 ... Phương án tối ưu thu

Ngày đăng: 04/08/2020, 00:27

Từ khóa liên quan

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

Tài liệu liên quan