Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 21 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
21
Dung lượng
501,43 KB
Nội dung
TÌM KiẾM CÓ ĐỐI THỦ Trí Tuệ Nhân Tạo (Lớp thứ 4, tiết 7) Chương 4: Nhóm thực hiện: 1. Nguyễn Tấn Chữ - 09110010 2. Nguyễn Nhật Minh Trí - 09110133 3. Đinh Thành Vương - 09110159 4.1 VẤN ĐỀ CHƠI CỜ Trong chương này ta chỉ quan tâm nghiên cứu các trò chơi có hai người tham gia vd: cờ tướng, ca rô,… Một người chơi gọi là MAX, đối thủ của MAX là MIN. *** Mục tiêu: nghiên cứu chiến lượt chọn nước đi cho MAX (MAX là máy tính chơi) Chơi cờ được xem là tìm kiếm các không gian trạng thái, mỗi trạng thái là một tình thế. • Trạng thái ban đầu: sự xắp xếp các quân cờ lúc bắt đầu. • Các toán tử là các nước đi hợp lệ. • Trạng thái kết thúc là tình thế dừng cuộc chơi. • Một hàm kết thúc (payoff function) ứng với mỗi trạng thái kết thúc với một giá trị nào đó. EX 4.2 CÂY TRÒ CHƠI VÀ HÀM ĐÁNH GIÁ 4.2.1. Cây trò chơi. Để thuận tiện cho việc nghiên cứu các chiến lượt chọn nước đi, ta biểu diển không gian trạng thái dưới dạng cây trò chơi. Cây trò chơi được biểu diễn dưới dạng: • Gốc của cây ứng với trạng thái ban đầu. • Đỉnh ứng với trạng thái mà MAX (MIN) đưa ra nước đi là MAX (MIN). • Các lá cây ứng với trạng thái kết thúc. Nếu đặt một đỉnh là MAX (MIN) ứng với trạng thái u, thì các đỉnh con của nó là tất cả các đỉnh biểu diễn trạng thái v, v nhận được từ u do MAX (MIN) thực hiện nướ đi hợp lệ nào đó. Trên cùng một mức của cây các đỉnh đều là MAX hoặc đều là MIN. 4.2 CÂY TRÒ CHƠI VÀ HÀM ĐÁNH GIÁ 4.2.1. Cây trò chơi. *** Ví dụ: Trò chơi DODGEM: Giới thiệu: • Đối thủ MAX cầm 2 quân trắng. Đối thủ MIN cầm 2 quân đen. • Quân cờ được xếp như hình bên. • Cách đi: • Quân đen có thể đi tới bên phải, ở trên hoặc ở dưới. • Quân trắng có thể đi tới bên phải, bên trái hoặc ở trên. • Các trường hợp kết thúc: • Đưa quân của mình ra khỏi bàn cờ trước: • Nếu quân đen ở cột ngoài cùng bên phải có thể ra khỏi bàn cờ. • Nếu quân trăng ở hàng trên cùng có thể ra khỏi bàn cờ. • Tạo ra tình thế đối phương không đi được. 4.2 CÂY TRÒ CHƠI VÀ HÀM ĐÁNH GIÁ 4.2.1. Cây trò chơi. *** Ví dụ: Trò chơi DODGEM: Ta có cây trò chơi được biểu diễn như hình: 4.2 CÂY TRÒ CHƠI VÀ HÀM ĐÁNH GIÁ 4.2.2. Hàm đánh giá. Hàm đánh giá eval ứng với mỗi trạng thái u của trò chơi với một giá trị số eval(u). Giá trị này đánh giá độ lợi thế của trạng thái u. • Trạng thái u càng thuận lợi cho MAX eval(u) là số dương càng lớn. • Trạng thái u càng thuận lợi cho MIN eval(u) là số âm càng nhỏ. • eval(u) = 0: trạng thái u không thuận lợi cả MAX và MIN. • eval(u) = +∞ nếu u là trạng thái thắng cho MAX • eval(u) = - ∞ nếu u là trạng thái thắng cho MIN 4.2 CÂY TRÒ CHƠI VÀ HÀM ĐÁNH GIÁ 4.2.2. Hàm đánh giá. Chất lượng của một chương trình chơi cờ phụ thuộc rất nhiều vào hàm đánh giá. Thiết kế một hàm đánh giá tốt là một việc rất khó, đòi hỏi phải quan tâm nhiều nhân tố: các quân còn lại của hai bên, sự bố trí của các quân cờ, … *** Ví dụ: trò chơi tic-tac-toe: Chỉ số eval có thể tính như sau: eval(u) = (số dòng, số cột, số đường chéo còn mở đối với MAX) = (số dòng, số cột, số đường chéo còn mở đối với MIN) 4.2 CÂY TRÒ CHƠI VÀ HÀM ĐÁNH GIÁ 4.2.2. Hàm đánh giá. *** Ví dụ:trò chơi tic-tac-toe: eval(u) = 6 – 5 = 1 X O X O Số dòng, số cột, số đường chéo còn mở lối đối với MIN là 5 Số dòng, số cột, số đường chéo còn mở lối đối với MAXlà 6 4.2 CÂY TRÒ CHƠI VÀ HÀM ĐÁNH GIÁ 4.2.2. Hàm đánh giá. *** Ví dụ 2: trở lại trò chơi Dodgem. Mỗi quân trắng và quân đen ở trên một vị trí trên bàn cờ được cho một giá trị như hình sau: Giá trị quân trắng giá trị quân đen 4.2 CÂY TRÒ CHƠI VÀ HÀM ĐÁNH GIÁ 4.2.2. Hàm đánh giá. *** Ví dụ 2: Trò chơi Dodgem. Ngoài ra: eval(u) = (giá trị các quân trắng + giá trị các quân đen + điểm cản trực tiếp hay gián tiếp do vị trí quân trắng quân đen tạo ra) Trắng cản trực tiếp đen được thêm 40 Trắng cản gián tiếp đen được thêm 30 Đen cản trực tiếp trắng được thêm -40 Đen cản gián tiếp trắng được thêm -30 [...]... evalue(v), ta không cần đi xuống để đánh giá đỉnh a nữa mà vẫn không ảnh hưởng đến đánh giá đỉnh c Nói cách khác là cắt bỏ gốc a 4. 4 PHƯƠNG PHÁP CẮT CỤT ALPHA - BETA 4. 4 PHƯƠNG PHÁP CẮT CỤT ALPHA - BETA 4. 4 PHƯƠNG PHÁP CẮT CỤT ALPHA - BETA 4. 4 PHƯƠNG PHÁP CẮT CỤT ALPHA - BETA .. .4. 2 CÂY TRÒ CHƠI VÀ HÀM ĐÁNH GIÁ 4. 2.2 Hàm đánh giá *** Ví dụ 2: trò chơi Dodgem Ta thử tính giá trị eval(u) cho hình dưới đây: Hình 1 Hình 2 Hình 1: eval(u) = 5+10 +40 +3 0-0 -1 0 = 75 Hình 2: eval(u) = 20+10+3 0-0 -2 5 -4 0 = -5 4. 3 CHIẾN LƯỢC MINIMAX Quá trình chơi cờ là quá trình Max và Min thay phiên nhau đưa ra quyết... phương pháp cắt cụt alpha- beta để giảm bớt số đỉnh cần đánh giá mà không ảnh hưởng đến sự đánh giá đỉnh u Ý tưởng của phương pháp: * Chiến lược tìm kiếm Minimax là tìm kiếm theo chiều sâu Giả sử trong quá trình tìm kiếm ta đi xuống đỉnh a là đỉnh MAX, đỉnh a có anh em là v đã đc dánh giá Giả sử cha của a là b và b có anh em là u đã đc đánh giá, và giả sử cha của b là c, Khi đó ta có giá trị đỉnh c – đỉnh... giá trị của hàm kết thúc • • Đỉnh có giá trị càng lớn càng tốt cho trắng Để xác định giá trị của các đỉnh ta bắt đầu từ mức thấp nhất lên gốc • 4. 3 CHIẾN LƯỢC MINIMAX Ví dụ: Xét cây trò chơi trong hình bên: - Gốc a là đỉnh trắng - Giá trị của các đỉnh là số ghi cạnh mỗi đỉnh Đỉnh I là Trắng, nên giá trị của nó là max(3 ,-2 ) = 3, đỉnh là đen nên giá trị của nó là min (2,3 ,4) = 2 Việc gán giá trị cho các... For w là đỉnh con của u do If val . TÌM KiẾM CÓ ĐỐI THỦ Trí Tuệ Nhân Tạo (Lớp thứ 4, tiết 7) Chương 4: Nhóm thực hiện: 1. Nguyễn Tấn Chữ - 09110010 2. Nguyễn Nhật Minh Trí - 09110133 3. Đinh Thành Vương - 09110159 4. 1 VẤN. cách khác là cắt bỏ gốc a. 4. 4 PHƯƠNG PHÁP CẮT CỤT ALPHA - BETA 4. 4 PHƯƠNG PHÁP CẮT CỤT ALPHA - BETA 4. 4 PHƯƠNG PHÁP CẮT CỤT ALPHA - BETA 4. 4 PHƯƠNG PHÁP CẮT CỤT ALPHA - BETA . trị eval(u) cho hình dưới đây: Hình 1 Hình 2 Hình 1: eval(u) = 5+10 +40 +3 0-0 -1 0 = 75 Hình 2: eval(u) = 20+10+3 0-0 -2 5 -4 0 = -5 4. 3 CHIẾN LƯỢC MINIMAX Quá trình chơi cờ là quá trình Max và Min thay