Bài giảng Nhập môn trí tuệ nhân tạo: Chương 1 - Văn Thế Thành (tt)

32 17 0
Bài giảng Nhập môn trí tuệ nhân tạo: Chương 1 - Văn Thế Thành (tt)

Đ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ài giảng Nhập môn trí tuệ nhân tạo - Chương 1: Tổng quan về trí tuệ nhân tạo trình bày các kiến thức về: Thuật giải, bài toán taci, bài toán Tháp Hà Nội với n = 2, thuật giải A* - tìm kiếm đường đi trên đồ thị tổng quát,... Mời các bạn cùng tham khảo.

Thuật giải AT, AKT Thuật giải AT (Algorithm for Tree): Mỗi đỉnh n tương ứng với số g(n): giá thành đường từ đỉnh ban đầu đến đỉnh n Đỉnh: + Đỉnh đóng (Closed) : đỉnh xem xét +Đỉnh mở (Open) : đỉnh giả thiết xem xét bước sau + Đỉnh ẩn (Hiden) : đỉnh mà hàm g(n) chưa xác định Thuật giải AT Bước 1: + Mọi đỉnh n, giá trị g(n) ẩn + Mở đỉnh gọi đỉnh S Đặt g(S) = Bước : Chọn đỉnh mở với giá thành g tương ứng nhỏ gọi đỉnh N + Nếu N mục tiêu: đường từ đỉnh ban đầu đến N đường ngắn g(N) Dừng (Success) + Nếu không tồn đỉnh mở nữa: biểu diễn vấn đề khơng có đường tới mục tiêu Dừng (Fail) + Nếu tồn nhiều đỉnh N (nghĩa có đỉnh N trở lên) mà có giá thành g(N) nhỏ Kiểm tra xem số có đỉnh đích hay khơng Nếu có: đường từ đỉnh ban đầu đến đỉnh N ngắn g(N), dừng (Success) Nếu khơng có: Chọn ngẫu nhiên đỉnh gọi đỉnh N Bước 3: Đóng đỉnh N mở đỉnh sau N (là đỉnh có cung hướng từ N tới) Tại đỉnh S sau N tính : g(S) = g(N) + cost(N→S) Bước 4: Quay lại bước Thuật giải AT- Ví dụ 100 B A E O D C 10 K 17 G F 20 H I J 1 L 1 12 N M P Q S 1 R T U V Trạng thái ñích Thuật giải AT- Ví dụ Mọi đỉnh n, g(n) chưa biết B1: Mở S, đặt g(S) = B2: Đóng S; mở A, B, C, D A g(A) = g(S) + gt(S→A) = + 100 = 100 E 1 g(B) = + 17 = 17 K g(C) = g(D) = + = (min) O Chọn ngẫu nhiên C, D: chọn C Q B3: Đóng C, mở G, H: S T g(A) = 100 U g(B) = 17 V g(D) = (min) g(G) = 11 g(H) = 21 100 B 17 1 D C 10 G F 20 H L 12 I 1 J N M P R Traïng thái đích Thuật giải AT- Ví dụ B4: Đóng D, mở I, J: g(A) = 100 g(B) = 17 g(I) = 13 g(J) = (min) g(G) = 11 g(H) = 21 B5: Đóng J, mở N: g(A) = 100 g(B) = 17 g(I) = 13 g(G) = 11 S g(H) = 21 g(N) = (min) 100 B A E O D C 10 K 17 F G H L 20 12 I M J N P Q 1 R T U V Trạng thái đích Thuật giải AT- Ví dụ B6: Đóng N, mở P: 100 17 D g(A) = 100 B C A g(B) = 17 10 20 12 1 G H I J g(I) = 13 E F g(G) = 11 1 K N g(H) = 21 L M 1 g(P) = (min) O P 1 B7: Đóng P, mở R: Q R g(A) = 100 1 g(B) = 17 S T g(I) = 13 Traïng thái đích U g(G) = 11 g(H) = 21 V g(R) = (min) 1 1 R đích Vậy đường là: Nhận xét: Thuật tốn sử dụng thơng tin: đỉnh, cung giá thành cung S → D  → J  → N  → P  → R Thuật giải AKT – Tìm kiếm với tri thức bổ sung (Algorithm for Knowledgeable Tree Search): Thuật giải AT thuật giải tìm kiếm đường tốt có thơng tin đỉnh, cung giá trị cung Trong nhiều trường hợp việc tìm kiếm đường định hướng rõ thêm sử dụng tri thức thu dựa hiểu biết tình vấn đề bước Tri thức bổ sung đỉnh tương ứng với giá trị h(n) Chẳng hạn ước lượng giá thành đường từ n đến mục tiêu Ở ví dụ giải thuật AT, bước : g(c) = g(d) = AT chọn tùy ý hai đỉnh c d để xét tiếp Nhưng thay chọn tùy ý đặt câu hỏi “Đỉnh đỉnh c d gần mục tiêu hơn”, ước lượng được: h(c) = 11 h(d) = việc chọn đỉnh d c Do tri thức bổ sung dựa sở cực tiểu hóa giá thành f bước : f(n) = g(n) + h(n) Thuật giải AKT Bước 1: Mọi đỉnh, hàm g, h, f chưa biết Mở đỉnh S, gán g(S) = Sử dụng tri thức bổ sung để ước tính hàm h(S) Tính f(S) = g(S) + h(S) Bước 2: Chọn đỉnh mở có f nhỏ gọi đỉnh N Nếu N đích: đường từ đỉnh ban đầu đến đỉnh N ngắn và g(N) Dừng (Success) Nếu không tồn đỉnh mở nào: biểu diễn vấn đề không tồn đường tới mục tiêu Dừng (Fail) Nếu có đỉnh mở trở lên có giá trị f nhỏ nhất: Chúng ta phải kiểm tra xem đỉnh có đỉnh đích hay khơng + Nếu có: đường từ đỉnh ban đầu đến đỉnh N ngắn g(N) Dừng (Success) + Nếu khơng có: chọn ngẫu nhiên đỉnh gọi đỉnh N Bước 3: Đóng đỉnh N, mở đỉnh sau N Với đỉnh S sau N, tính: g(S) = g(N) + cost(S→N) Sử dụng tri thức bổ sung để tính h(S) f(S): f(S) = g(S) + h(S) Bước 4: Quay lại bước Bài toán Tháp Hà Nội với n = S0 Sn Các trường hợp toán với trạng thái cột thứ ba: h(n) = g=0 h=2 f=2 g=1 h=2 f = (min) g=1 h=3 f=4 g=2 h=2 f=4 g=2 h=3 f=5 g=2 h=1 f = (min) g=3 h=2 f=5 g=3 h=1 f=4 g=3 h=0 f = (Đích) Bài tốn taci 1 7 S0 Sn Cách 1: 0 neáu a i = b i H = ∑ δ(a i , b i ) với δ(a i , b i ) =  i =1 1 neáu a i ≠ b i t 8 7 g=1 h=5 f=6 8 6 g=3 h=2 f = (min) g=4 h=1 f = (min) g=1 h=3 f = (min) g=2 h=3 f=5 g=0 h = (có số sai vị trí so vớ i Goal) f=4 g=2 h=3 f = (min) 8 8 g=1 h=5 f=6 g=2 h=4 f=6 g=3 h=4 f=7 g=5 h=0 f = (Đích) Bài tốn taci t Cách 2: H = ∑ η(a i , b i ) i =1 với η(ai,bi) số lần phải đẩy ô = a theo chiều dọc hay ngang vị trí bi = b Giả sử: Soá Cộng Vị trí 1 0 Bài toán taci (tt) The algorithm tries to reach a state in G from SI as follows OPEN := {SI}, CLOSED := ; If some state in G is in OPEN, then stop: solution found If OPEN = ;, then stop: no solution Choose an element S OPEN with the least f(S) OPEN := OPEN\{S}, CLOSED := CLOSED[{S} OPEN := OPEN [ neighbors/successors of S not in OPEN nor in CLOSED Go to Thuật giải A* - tìm kiếm đường đồ thị tổng quát Mở rộng thuật giải AKT thành thuật giải A* sau: Bước 1: Mở đỉnh đầu tiên: S0 = E; {Trang thái ban đầu} g(S0) = 0; f(S0) = g(S0)+ h(S0) ; θ= {S0}; {Gán S0 cho tập đỉnh mở} C={}; {Gán tập đóng C rỗng} while θ ≠ {} Bước 2: Chọn S θ với f(S) nhỏ nhất: θ = θ - {S} C = C + {S} {Đóng đỉnh S} Nếu S đích dừng Ngược lại qua bước Thuật giải A* - tìm kiếm đường đồ thị tổng quát (tt) Bước 3: Xây dựng đỉnh Si đến từ S nhờ hành động chọn để thực hiện.∀Si sau S: •Tính g(Si) ứng với i: g(Si) = g(S) + cost(S->Si) •Ước lượng h(Si) •Gán f(Si)=g(Si)+h(Si) Bước 4: Đặt vào θ Si khơng có θ lẫn C Với Si có θ C gán: f(Si) = Min( fcũ(Si), fmới(Si) ) If Si có C and fcũ(Si)< fmới(Si) then C := C – {Si} θ := θ + {Si} {Mở Si} End A* Thuật giải A* - tìm kiếm đường đồ thị tổng quát (tt) Thuật giải diễn giải sau : Bước 1: Mọi đỉnh Mọi đỉnh, hàng g, h, f chưa biết Mở đỉnh S, gán g(S) = Ước lượng hàm h(S) Gán f(S) = h(S)+ g(S) Bước 2: Chọn đỉnh mở có f(S) nhỏ gọi đỉnh N •Nếu N đích: đường từ đỉnh ban đầu đến đỉnh N ngắn và g(N) Dừng (Success) •Nếu khơng tồn đỉnh mở nào: biểu diễn vấn đề không tồn đường tới mục tiêu Dừng (Fail) •Nếu có đỉnh mở trở lên có giá trị f(S) nhỏ nhất: ta phải kiểm tra xem đỉnh có đỉnh đích hay khơng Thuật giải A* - tìm kiếm đường đồ thị tổng quát (tt) + Nếu có: đường từ đỉnh ban đầu đến đỉnh N ngắn g(N) Dừng (Success) + Nếu khơng có: chọn ngẫu nhiên đỉnh gọi đỉnh N Bước 3: Đóng đỉnh N, đỉnh S sau N, tính: g’(S) = g(N) + cost(S→N) Nếu đỉnh S mở g(S)≤ g’(S) bỏ qua S Ngược lại mở S đặt g(S) = g’(S), tính h(S) f(S): f(S) = g(S) + h(S) Bước 4: Quay lại bước Bản đồ Romania với khoảng cách tính theo km Khoảng cách đường chim bay từ thành phố đến Bucharest 10 Thuật giải GTS (Greedy-Traveling Saleman) GTS1: Xây dựng lịch trình du lịch có chi phí Cost tối thiểu cho toán trường hợp phải qua n thành phố với ma trận chi phí C bắt đầu đỉnh U Thuật giải: Bước 1: {Khởi đầu} Đặt Tour := {}; Cost := 0; V := U; {V đỉnh làm việc} Bước 2: {Thăm tất thành phố} For k := To n Do qua bước 3; Thuật giải GTS (Greedy-Traveling Saleman) Bước 3: {Chọn cung kế tiếp} Đặt (V, W) cung có chi phí nhỏ tình từ V đến đỉnh W chưa dùng: Tour := Tour + {(V,W)}; Cost := Cost + Cost(V,W); Nhãn W sử dụng Đặt V := W; {Gán để xét bước kế tiếp} Bước 4: {Chuyến hoàn thành} Đặt Tour := Tour + {(V,U)}; Cost := Cost + Cost(V,U); Dừng 18 A Ví dụ ∞  1 ∞ 4 3   C = 2 ∞ 2 7 ∞ 3    3 ∞ E 2 U= A Tour = {} Cost = D V =A W ∈ {B, C, D, E} {Các đỉnh đến từ A} →W=B {Vì qua B có giá thành bé nhất} Tour = {(A, B)} Cost = V=B W ∈ {C, D, E} →W=E Tour = {(A, B),(B, E)} Cost = + = V =E W ∈ {C, D} 4 C A Ví dụ E →W=C Tour = {(A, B), (B, E), (E, C)} 4 Cost = + = V=C D C W ∈ {D} →W=D Tour = {(A, B), (B, E), (E, C), (C, D)} Cost = + = V =D Tour = {(A, B), (B, E), (E, C), (C, D), (D, A)} Cost = + = 14 Kết quả: Tour du lịch A → B → E → C → D → A với giá thành Cost = 14 Nhận xét: Tuy nhiên kết nhỏ A → B → D → C → E → A với Cost=13 Sở dĩ không tối ưu “háu ăn”: hướng có chi phí thấp đi, bất chấp sau 19 GTS2 GTS2: Tạo lịch trình từ p thành phố xuất phát riêng biệt Tìm chu trình người bán hàng qua n thành phố (1

Ngày đăng: 08/05/2021, 19:51

Từ khóa liên quan

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

Tài liệu liên quan