Báo cáo Nghiên cứu về Lịch sử Chơi Cờ Tướng (Xiangqi) Trên Máy Tính
Tổng hợp có hệ thống lịch sử phát triển engine cờ tướng từ thập niên 1980 đến năm 2026, bao gồm các engine tiêu biểu, giao thức và hệ sinh thái công cụ. Giải vô địch cờ máy tính Đại học Quốc gia → Sử Dụng Trình Gỡ Lỗi UCCI
Giải vô địch cờ máy tính Đại học Quốc gia
- Tổ chức: Ủy ban Chỉ đạo Giảng dạy Chuyên ngành Máy tính của Bộ Giáo dục
- Lịch sử: Bắt đầu từ những năm 2010
- Tần suất: Hàng năm
- Người tham dự: Sinh viên đại học trên toàn quốc
- Thể thức: Vòng bảng cộng với loại trực tiếp
Các Giải Đấu Xếp Hạng Engine Trực Tuyến
Trong những năm gần đây, các giải đấu xếp hạng engine trực tuyến do cộng đồng tổ chức đã dần xuất hiện:
- Cộng đồng tổ chức các trận đấu engine trên Fishtest hoặc các nền tảng tương tự
- Xếp hạng và điểm ELO được tự động cập nhật
- Cung cấp dữ liệu so sánh công khai cho phát triển engine
Tập XV: Tiêu Chuẩn Mã Nguồn Engine Cờ Tướng
Tổ Chức Mã Nguồn
Mã nguồn engine cờ tướng thường được tổ chức thành các thư mục sau:
src/: Thư mục mã nguồn position/: Mã biểu diễn thế cờ movegen/: Mã sinh nước đi search/: Mã thuật toán tìm kiếm evaluate/: Mã hàm đánh giá ucci/: Mã giao thức UCCI nnue/: Mã đánh giá NNUE (engine hiện đại) benchmark/: Mã kiểm thử điểm chuẩn
Makefile: Cấu hình biên dịch README.md: Tài liệu dự án LICENSE: Tệp giấy phép tests/: Mã kiểm thử và dữ liệu kiểm thử
Quy Ước Mã Nguồn
Quy ước đặt tên:
- Tên lớp sử dụng PascalCase (PositionEvaluation)
- Tên hàm sử dụng camelCase (generateMoves)
- Tên biến sử dụng chữ thường với dấu gạch dưới (best_move)
- Hằng số sử dụng VIẾT_HOA với dấu gạch dưới (MAX_PLY)
Định dạng mã nguồn:
- Thụt lề sử dụng 2 dấu cách hoặc 4 dấu cách
- Dấu ngoặc nhọn trên cùng dòng với từ khóa (kiểu K&R)
- Câu lệnh if một dòng yêu cầu có dấu ngoặc nhọn
Quy ước chú thích:
- Mỗi hàm công khai cần một chú thích giải thích mục đích, tham số và giá trị trả về
- Triển khai thuật toán phức tạp cần chú thích giải thích nguyên lý
- Chú thích TODO cần ghi chú các mục tiếp theo
Tập XVI: Kỹ Thuật Gỡ Lỗi Engine Cờ Tướng
Sử Dụng Trình Gỡ Lỗi UCCI
Trình gỡ lỗi UCCI là một công cụ cơ bản để tương tác và gỡ lỗi engine cờ tướng:
Chức năng chính:
- Gửi lệnh UCCI (ucci, isready, position, go, stop, v.v.)
- Hiển thị phản hồi và kết quả tìm kiếm của engine
- Kiểm tra tính đúng đắn của triển khai giao thức UCCI
- Ghi lại nhật ký giao tiếp engine
Quy trình gỡ lỗi:
- Khởi động trình gỡ lỗi UCCI
- Gửi lệnh “ucci” để khởi tạo engine
- Gửi “setoption” để cấu hình các tùy chọn engine
- Gửi “position” để thiết lập thế cờ trên bàn
- Gửi “go” để bắt đầu tìm kiếm
- Xem kết quả tìm kiếm do engine trả về (nước đi tốt nhất, giá trị đánh giá, độ sâu tìm kiếm, v.v.)