TAILIEUCHUNG - Giáo trình giải thuật của Nguyễn Văn Linh part 11

• Một kiểu NodeType được khai báo một cách thích hợp để biểu diễn cho một nút trên cây phản ánh một trạng thái của cuộc chơi. • Ta có một hàm is_leaf để xác định xem một nút có phải là nút lá hay không? • Hàm max và min tương ứng lấy giá trị lớn nhất và giá trị nhỏ nhất của hai giá trị. Hàm Search nhận vào một nút n và kiểu mode của nút đó (MIN hay MAX) trả về giá trị của nút. Nếu nút n là nút lá thì trả về giá trị. | Giải thuật Kĩ thuật thiết kế giải thuật Một kiểu NodeType được khai báo một cách thích hợp để biểu diễn cho một nút trên cây phản ánh một trạng thái của cuộc chơi. Ta có một hàm is_leaf để xác định xem một nút có phải là nút lá hay không Hàm max và min tương ứng lấy giá trị lớn nhất và giá trị nhỏ nhất của hai giá trị. Hàm Search nhận vào một nút n và kiểu mode của nút đó MIN hay MAX trả về giá trị của nút. Nếu nút n là nút lá thì trả về giá trị đã được gán cho nút lá. Ngược lại ta cho n một giá trị tạm value là -œ hoặc œ tùy thuộc n là nút MAX hay MIN và xét con của n. Sau khi một con của n có giá trị V thì đặt lại value max value V nếu n là nút MAX và value min value V nếu n là nút MIN. Khi tất cả các con của n đã được xét thì giá trị tạm value của n trở thành giá trị của nó. FUNCTION Search n NodeType mode ModeType real VAR C NodeType C là một nút con của nút n Value real Lúc đầu ta cho value một giá trị tạm sau khi đã xét hết tất cả các con của nút n thì value là giá trị của nút n BEGIN IF is_leaf n THEN RETURN Payoff n ELSE BEGIN Khởi tạo giá trị tạm cho n IF mode MAX THEN value -œ ELSE value œ Xét tất cả các con của n mỗi lần xác định được giá trị của một nút con ta phải đặt lại giá trị tạm value. Khi đã xét hết tất cả các con thì value là giá trị của n FOR với mỗi con C của n DO IF mode MAX THEN Value max Value Search C MIN ELSE Value min Value Search C MAX RETURN value END END Kĩ thuật cắt tỉa Alpha-Beta Alpha-Beta Pruning Trong giải thuật vét cạn ở trên ta thấy để định trị cho một nút nào đó ta phải định trị cho tất cả các nút con cháu của nó và muốn định trị cho nút gốc ta phải định trị cho tất cả các nút trên cây. Số lượng các nút trên cây trò chơi tuy hữu hạn nhưng không phải là ít. Chẳng hạn trong cây trò chơi ca rô nói trên nếu ta có bàn cờ bao gồm n ô thì có thể có tới n nút trên cây trong trường hợp trên là 9 . Đối với các loại cờ khác như cờ vua chẳng hạn thì số lượng các nút còn lớn hơn nhiều. Ta gọi là một sự bùng nổ tổ hợp các nút. .

TỪ KHÓA LIÊN QUAN
TAILIEUCHUNG - Chia sẻ tài liệu không giới hạn
Địa chỉ : 444 Hoang Hoa Tham, Hanoi, Viet Nam
Website : tailieuchung.com
Email : tailieuchung20@gmail.com
Tailieuchung.com là thư viện tài liệu trực tuyến, nơi chia sẽ trao đổi hàng triệu tài liệu như luận văn đồ án, sách, giáo trình, đề thi.
Chúng tôi không chịu trách nhiệm liên quan đến các vấn đề bản quyền nội dung tài liệu được thành viên tự nguyện đăng tải lên, nếu phát hiện thấy tài liệu xấu hoặc tài liệu có bản quyền xin hãy email cho chúng tôi.
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.