Khi bắt đầu xây dựng trí tuệ nhân tạo (AI) cho các trò chơi đối kháng có chiến thuật như Cờ tướng, Cờ vua, hay Tic-Tac-Toe, thuật toán đầu tiên và là nền móng cho mọi engine hiện đại chính là Minimax . Để hiểu bản chất của Minimax, chúng ta không cần lao ngay vào những thế cờ phức tạp. Hãy cùng quay ngược thời gian, bước vào một bàn tiệc luận anh hùng giữa hai nhân vật lẫy lừng thời Tam Quốc: Tào Tháo và Lưu Bị . 1. Điển Tích "Chia Báu Vật" Giữa Tào Tháo Và Lưu Bị Giả sử Tào Tháo và Lưu Bị bắt gặp 4 chiếc hòm chứa lượng vàng khác nhau. Tào Tháo (đại diện cho AI ) được quyền chọn trước một trong hai lối đi dẫn đến các cặp hòm. Tuy nhiên, Lưu Bị (đại diện cho Đối thủ ) lại là người được quyền mở chiếc hòm cuối cùng trong lối đi đó để lấy vàng. Mục tiêu của hai người hoàn toàn trái ngược nhau: Tào Tháo (AI / Maximizer): Luôn muốn chọn lối đi sao cho lượng vàng nhận được là lớn nhất (Max) . Lưu Bị (Đối thủ / Minimizer): Luôn muốn chọn chiếc hòm sao cho lượn...
Giới thiệu Wukong Xiangqi là một engine cờ tướng (Xiangqi) tối giản được viết hoàn toàn bằng ngôn ngữ C thuần túy bởi tác giả Maksim Korzh. Dự án hỗ trợ giao thức UCCI (Universal Chinese Chess Interface), cho phép kết nối dễ dàng với các giao diện (GUI) cờ tướng phổ biến hiện nay. Kiến trúc bàn cờ mẫu (Board Representation) Wukong sử dụng mảng một chiều dựa trên hệ thống tọa độ mở rộng 11x14 để biểu diễn bàn cờ. Cách tiếp cận này giúp kiểm tra quân cờ đi ra ngoài biên một cách tự nhiên nhờ các ô đệm (Off-board). Dưới đây là cách định nghĩa các quân cờ bằng mã số nguyên trong mã nguồn mẫu: // Định nghĩa hằng số cho các quân cờ enum { COLOR_EMPTY, RED_PAWN, RED_ADVISOR, RED_BISHOP, RED_KNIGHT, RED_ROOK, RED_CANNON, RED_KING, BLACK_PAWN, BLACK_ADVISOR, BLACK_BISHOP, BLACK_KNIGHT, BLACK_ROOK, BLACK_CANNON, BLACK_KING }; Định hướng áp dụng Machine Learning (ML) tương lai Cấu trúc tìm kiếm Alpha-Beta kết hợp với hàm đánh giá tĩnh hiện tại của Wukong dựa trên mô hình ...