Bài giảng Các hệ thống thông minh nhân tạo và ứng dụng - Chương 5: Bài toán thỏa mãn ràng buộc có nội dung trình bày về khái niệm bài toán thỏa mãn ràng buộc (CSP), đồ thị ràng buộc, CSP với kĩ thuật quay lui, CSP với tìm kiếm cục bộ,... Mời các bạn cùng tham khảo chi tiết nội dung bài giảng!
CÁC HỆ THỐNG THÔNG MINH NHÂN TẠO & ỨNG DỤNG Bài toán thoả mãn ràng buộc THS BÙI THỊ DANH BM.KHMT, KHOA CNTT, ĐH.KHTN TP.HCM Nội dung Bài tốn thoả mãn ràng buộc (CSP) Đồ thị ràng buộc CSP với kĩ thuật quay lui CSP với tìm kiếm cục Bài toán thoả mãn ràng buộc (CSP) Được xem tập đặc biệt tốn tìm kiếm Trạng thái định nghĩa tập biến Xi có giá trị nằm miền D ◦ Có trường hợp biến có miền giá trị D khác Trạng thái đích nhận biết thơng qua tập ràng buộc việc kết hợp giá trị cho biến Ví dụ: Tơ màu đồ thị Các biến: WA, NT, Q, NSW, V, SA, T ◦ Mỗi biến đại diện cho bang Miền giá trị: D = {red, green, blue} Tập ràng buộc: bang kề không giống màu ◦ WA ≠ NT, WA ≠ SA, NT ≠ SA … Lời giải: phép gán màu thoả mãn ràng buộc, chẳng hạn: ◦ {WA = red, NT = green, Q = red, NSW = green, V = red, SA = blue, T = green} Ví dụ: N-Hậu Các biến: Xij Miền giá trị: D = {0, 1} Các ràng buộc: "i, j, k, (Xij , Xik ) Ỵ {(0, 0), (0,1), (1, 0)} "i, j, k, (Xij , Xkj ) Ỵ {(0, 0), (0,1), (1, 0)} "i, j, k, (Xij , Xi+k, j+k ) Ỵ {(0, 0), (0,1), (1, 0)} "i, j, k, (Xij , Xi+k, j-k ) Ỵ {(0, 0), (0,1), (1, 0)} åX ij =N i, j Ví dụ: N-Hậu Các biến: Qk Miền giá trị: D = {1, 2, 3, …, N} Các ràng buộc: "i, j, non _ threatening(Qi ,Qj ) CSP thực tế Phân công công việc, chẳng hạn phân công giảng dạy … Lập lịch: lớp học đâu nào? Lập lịch giao thông Tổ chức mạch điện … Nội dung Bài tốn thoả mãn ràng buộc (CSP) Đồ thị ràng buộc CSP với kĩ thuật quay lui CSP với tìm kiếm cục Đồ thị ràng buộc (constraint graph) Các node tròn: đại diện cho biến Các node vuông: đại diện cho ràng buộc Các cạnh: nối biến thông qua node ràng buộc liên quan Đồ thị ràng buộc 𝒇𝒊 (𝑿) hàm giá trị cho biết mức độ thoả mãn ràng buộc thứ i Trọng số phép gán (hay lời giải) x = (𝑥1 , 𝑥2 , … , 𝑥𝑛 ): Weight x = ෑ 𝑓𝑗 (x) j=1 𝑚 Mục tiêu tốn tìm phép gán có trọng số lớn Đối với CSP: 𝑓𝑗 (x) ∈ {0,1} 10 Nội dung Bài tốn thoả mãn ràng buộc (CSP) Đồ thị ràng buộc CSP với kĩ thuật quay lui CSP với tìm kiếm cục 19 CSP với tìm kiếm cục Kĩ thuật quay lui : mở rộng dần phép gán Tìm kiếm cục (local search): điều chỉnh phép gán hồn chỉnh ◦ Thuật tốn lặp ◦ Leo đồi ◦ Thuật giải di truyền 20 Thuật toán lặp Khởi tạo phép gán đầy đủ Phép gán khơng thoả tất ràng buộc Trong chưa tìm thấy lời giải: ◦ Chọn biến: chọn ngẫu nhiên biến vi phạm ràng buộc ◦ Chọn giá trị: sử dụng heuristic “min-conflict” Heuristic “min-conflict” ◦ Chọn giá trị vi phạm ràng buộc ◦ Nghĩa leo đồi với hàm h(s) = số ràng buộc bị vi phạm 21 Ví dụ: – Hậu Trạng thái: hậu, đặt cột khác (44 = 256) Hành động: di chuyển hậu theo cột Mục tiêu: khơng có cơng Hàm heuristic: h(s) = số cặp hậu cơng lẫn 22 Hiệu min-conflict Cho trạng thái khởi tạo ngẫu nhiên, tốn n-hậu giải gần thời gian số với n với xác suất cao Điều cho CSP bất kì, ngoại trừ trường hợp rơi vào khoảng hẹp tỉ lệ sau: #constraints R= #variables 23 Thuật giải leo đồi Bắt đầu vị trí Lặp: ◦ Di chuyển sang láng giềng có vị trí tốt ◦ Nếu khơng tìm thấy láng giềng tốt dừng 24 Thuật giải leo đồi Thốt khỏi điểm tối ưu cục cách cho phép di chuyển xuống Ý tưởng: sử dụng xác suất p = 𝑒 ∆E/𝑇 cho phép di chuyển xuống trường hợp khơng có láng giềng tốt ◦ ΔE : chênh lệch giá trị trạng thái trước sau ◦ T: giá trị ánh xạ từ thời điểm thực thi sang “temperature” 25 Thuật giải di truyền Dựa nguyên tắc chọn lọc tự nhiên ◦ Luôn giữ k lời giải tốt bước (chọn lọc) dựa hàm thích nghi ◦ Các tốn tử lai ghép đột biến cho phép tạo thay đổi 26 Thuật giải di truyền Khởi tạo quần thể Bắt đầu Thoả điều kiện kết thúc Xác định độ thích nghi cá thể Chọn lọc cá thể bố mẹ Kết thúc Lai ghép Đột biến cá thể Xây dựng quần 27 Biểu diễn cá thể Mỗi cá thể ≡ giả thiết cho lời giải toán Biểu diễn chuỗi số ngun số thực ◦ Ví dụ: tốn hậu Biểu diễn chuỗi nhị phân ◦ Ví dụ: tốn hâu: dùng × log bit để biểu diễn 0 0 1 0 … 1 28 Độ thích nghi cá thể Là hàm cho biết độ tốt lời giải ứng với tốn cụ thể Ví dụ với tốn N – hậu, độ thích nghi số hậu khơng bị cơng 29 Chọn lọc cá thể Các cá thể lựa chọn để lai ghép dựa vào độ thích nghi chúng Sử dụng quy tắc bàn quay Rollete ◦ Phát sinh giá trị ngẫu nhiên p ∈ [0,1] để chọn cá thể Ví dụ: STT Cá thể 0010001 Độ thích nghi 0.4 0010101 0101000 1100011 0.3 0.05 0.25 30 Lai ghép Cặp cá thể chọn lọc lai ghép cách hoán vị nhiễm sắc thể vị trí ngẫu nhiên với xác suất 𝑝𝑐 Tốn tử lai ghép có xu hướng kéo quần thể phía cá thể có độ thích nghi cao cục địa phương 31 Đột biến Giúp lời giải nhảy khỏi cực trị địa phương Với cá thể quần thể, thực đột biến với xác suất 𝑝𝑚 nhiều vị trí nhiễm sắc thể ngẫu nhiên 0010001 0110001 32 Tài liệu tham khảo Cơ sở Trí tuệ Nhân tạo, Lê Hồi Bắc, Tơ Hồi Việt, NXB Khoa học & Kỹ thuật Slide giảng Trí tuệ nhân tạo, GV Tơ Hồi Việt, GV Lê Ngọc Thành, Khoa CNTT, ĐH KHTN TP.HCM Artificial Intelligence: A Modern Approach, 3rd Edition, S Russel and P Norvig, Pearson Education Inc., 2010 Techniques in Artificial Intelligence (SMA 5504) , MIT OpenCourseWare, Massachusetts Institute of Technology Artificial Intelligence: Principles and Techniques, Stanford courses, Autumn 2015 33 ... kiếm cục Đồ thị ràng buộc (constraint graph) Các node tròn: đại diện cho biến Các node vuông: đại diện cho ràng buộc Các cạnh: nối biến thông qua node ràng buộc liên quan Đồ thị ràng buộc