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ụ. Chương 1: Sự Tiến Hóa của Công Nghệ Biểu Diễn Thế Cờ → Chương 6: Phân Tích Thực Tế về Engine Cờ Tướ…

☰ Mục lục

Chương 1: Sự Tiến Hóa của Công Nghệ Biểu Diễn Thế Cờ

1.1 Biểu Diễn Mảng

Các engine Cờ Tướng (Xiangqi) đầu tiên (Zun Zu / Chess Master, Chess1 / Qi Yin, ElephantEye phiên bản đầu, v.v.) sử dụng mảng hai chiều 10x9 để biểu diễn bàn cờ. Mỗi phần tử mảng lưu một số nguyên cho biết loại quân và màu sắc tại vị trí đó.

Một sơ đồ mã hóa biểu diễn mảng điển hình:

  • 0: Vị trí trống
  • Số dương (1-7): Quân Đỏ (Tướng, Sĩ, Tượng, Mã, Xe, Pháo, Tốt)
  • Số âm (-1 đến -7): Quân Đen (Tướng, Sĩ, Tượng, Mã, Xe, Pháo, Tốt)

Ưu điểm của biểu diễn mảng: Trực quan và dễ hiểu, đơn giản để cài đặt, thuận tiện cho việc gỡ lỗi. Nhược điểm: Hiệu suất thấp, không thân thiện với bộ nhớ cache, hiệu suất song song kém.

1.2 Biểu Diễn Bitboard

Các engine hiện đại (như Pikafish) sử dụng biểu diễn bitboard. Bitboard sử dụng nhiều số nguyên 64-bit để biểu diễn trạng thái bàn cờ, với mỗi bit đại diện cho một giao điểm trên bàn cờ.

Bàn cờ Cờ Tướng có 90 giao điểm và 14 loại quân (7 Đỏ + 7 Đen) mỗi loại sử dụng một bitboard 64-bit. Bit 0 của bitboard đại diện cho góc trên bên trái của bàn cờ, bit 9 đại diện cho góc dưới bên trái và bit 81 đại diện cho góc trên bên phải.

Ưu điểm của bitboard:

  1. Sinh nước đi nhanh — thông qua tính toán trước và các phép toán bit
  2. Truy cập bộ nhớ hiệu quả — cấu trúc dữ liệu nhỏ gọn, thân thiện với bộ nhớ cache
  3. Song song tốt — các phép toán bit tự nhiên hỗ trợ thực thi song song
  4. Cập nhật gia tăng dễ dàng — các phép toán bit AND/OR/XOR trên bitboard

Thách thức của bitboard: Khó gỡ lỗi (giá trị bitboard là số nguyên nhị phân, không trực quan); kích thước bàn cờ Cờ Tướng không khớp hoàn hảo với số nguyên 64-bit (90 bit so với 64 bit).

Chương 2: Phân Tích Chuyên Sâu về Bộ Sinh Nước Đi

2.1 Luật Di Chuyển của Quân Cờ Tướng

Luật di chuyển của 7 loại quân Cờ Tướng mỗi loại khác nhau:

Tướng (Shuai / Jiang): Di chuyển một bước trong cung (hàng 0-2 hoặc 7-9, cột 3-5) theo hướng ngang dọc (lên, xuống, trái, phải). Hai Tướng không được đối mặt trên cùng một cột nếu không có quân nào ở giữa (luật “bay tướng”).

Sĩ (Shi): Di chuyển một bước theo đường chéo trong cung, chỉ giới hạn tại 5 giao điểm của cung.

Tượng (Xiang): Di chuyển theo đường chéo hình “ruộng” (2 bước), với ràng buộc “chặn mắt voi” và không được qua sông.

Mã (Ma): Di chuyển theo hình chữ “L” (kết hợp 2 bước + 1 bước), với ràng buộc “cản chân ngựa.”

Xe (Che): Di chuyển số bước bất kỳ theo đường thẳng (ngang hoặc dọc) và không thể nhảy qua quân khác.

Pháo (Pao): Đối với nước đi không ăn quân, di chuyển số bước bất kỳ theo đường thẳng mà không nhảy; đối với nước ăn quân, di chuyển theo đường thẳng, nhảy qua đúng một quân (“vật chắn”) và ăn quân địch đầu tiên gặp sau vật chắn.

Tốt (Bing / Zu): Trước khi qua sông, chỉ có thể đi một bước về phía trước. Sau khi qua sông, có thể đi một bước về phía trước hoặc ngang, nhưng không thể đi lùi.

2.2 Mã Giả Sinh Nước Đi

Logic sinh nước đi cho mỗi quân Cờ Tướng:

Sinh nước đi Xe: Với mỗi hướng (lên, xuống, trái, phải), liệt kê từng bước từ vị trí hiện tại theo hướng đó. Nếu ô trống, thêm nước đi không ăn quân và tiếp tục; nếu ô có quân địch, thêm nước ăn quân và dừng; nếu ô có quân đồng minh, dừng. Dừng khi ô nằm ngoài ranh giới bàn cờ.

Sinh nước đi Pháo: Với mỗi hướng, liệt kê từng bước theo hướng đó. Sử dụng bộ đếm vật chắn: khi bộ đếm là 0, thêm nước đi không ăn quân cho ô trống, đặt bộ đếm thành 1 nếu có quân; khi bộ đếm là 1, thêm nước ăn quân cho quân địch và dừng, dừng cho quân đồng minh và tiếp tục cho ô trống.

Sinh nước đi Mã: Với 8 hướng đích của Mã, tính toán vị trí đích và vị trí chặn. Nếu vị trí chặn có quân (cản chân), bỏ qua; nếu vị trí đích có quân đồng minh, bỏ qua; nếu vị trí đích có quân địch, thêm nước ăn quân; nếu ô đích trống, thêm nước đi không ăn quân.

Sinh nước đi Tốt: Xác định hướng tiến; thêm nước đi nếu ô đích trống hoặc có quân địch. Khi Tốt đã qua sông, quy tắc tương tự áp dụng cho hướng trái và phải.

2.3 Cơ Chế Sinh Ưu Tiên cho Nước Ăn Quân

Trong tìm kiếm PVS, thứ tự sinh các nước ăn quân có tác động đáng kể đến hiệu suất tìm kiếm. Các engine sử dụng thứ tự ưu tiên sau:

  1. Nước đi tốt nhất từ bảng chuyển vị (nếu có trong bảng chuyển vị)
  2. Nước ăn có lợi (nước ăn được SEE đánh giá là dương)
  3. Nước ăn có lời (ăn quân giá trị cao bằng quân giá trị thấp)
  4. Nước ăn ngang giá (ăn quân giá trị ngang bằng quân giá trị ngang)
  5. Nước ăn thua lỗ (ăn quân giá trị thấp bằng quân giá trị cao)
  6. Nước đi không ăn quân (nước killer trước, nước heuristic lịch sử, sau đó là các nước khác)

Chương 3: Phân Tích Chuyên Sâu về Hàm Đánh Giá

3.1 Thiết Kế Hàm Đánh Giá Thủ Công

Hàm đánh giá thủ công của engine Cờ Tướng là tổ hợp tuyến tính của một loạt các đặc trưng thế cờ. Một hàm đánh giá điển hình bao gồm: đánh giá giá trị quân, đánh giá giá trị vị trí, đánh giá hoạt động của quân, đánh giá an toàn của Tướng, đánh giá cấu trúc thế trận, đánh giá phối hợp quân và các điều chỉnh chiến thuật.

Trong đánh giá giá trị quân, giá trị cơ bản của các quân khác nhau như sau:

  • Tướng: 10000 (giá trị không thể định lượng)
  • Xe: 600
  • Mã: 270
  • Pháo: 285
  • Sĩ/Tượng: 120
  • Tốt: 30-150 (thay đổi theo giai đoạn ván cờ)

Bảng giá trị vị trí gán một giá trị định sẵn cho mỗi quân tại mỗi vị trí trên bàn cờ. Ví dụ, giá trị vị trí của Tốt Đỏ: điểm thấp khi ở bên nhà (Tốt chưa qua sông), điểm cao sau khi qua sông và điểm đặc biệt cao ở các cột trung tâm (gần Tướng).

Đánh giá hoạt động của quân bao gồm: số hướng có thể di chuyển của Mã, số đường có thể kiểm soát của Xe, số lượng và chất lượng vật chắn của Pháo, v.v.

Đánh giá an toàn của Tướng bao gồm: số Sĩ và Tượng bảo vệ Tướng, không gian được kiểm soát xung quanh Tướng, liệu Tướng có bị lộ trước đòn tấn công của địch hay không, v.v.

Đánh giá cấu trúc thế trận bao gồm: tính toàn vẹn của Sĩ và Tượng, đội hình Tốt và mức độ kiểm soát sông và cung.

3.2 Quy Trình Tinh Chỉnh Hàm Đánh Giá

Tinh chỉnh hàm đánh giá thủ công là một nỗ lực kỹ thuật có hệ thống:

Tinh chỉnh cơ bản: Đặt các tham số cơ bản dựa trên lý thuyết cờ và kinh nghiệm đã biết. Chạy engine tự đấu nhiều ván để thu thập độ lệch đánh giá, sau đó điều chỉnh tham số dựa trên độ lệch đó.

Tinh chỉnh theo loại thế cờ: Thu thập dữ liệu kiểm thử cho các loại thế cờ cụ thể (khai cuộc, trung cuộc, tàn cuộc, ưu thế, bất lợi), phân tích độ lệch đánh giá cho từng loại và điều chỉnh các tham số tương ứng.

Tinh chỉnh fine-tuning: Sử dụng Fishtest hoặc các khung kiểm thử thống kê tương tự cho kiểm thử quy mô lớn. Điều chỉnh từng tham số một lần, quan sát thay đổi ELO, chỉ giữ lại các điều chỉnh mang lại cải thiện ELO đáng kể và lặp lại cho đến khi các tham số đạt đến tối ưu cục bộ.

3.3 Kiến Trúc của Hàm Đánh Giá Thủ Công

Hàm đánh giá thủ công có cấu trúc phân cấp:

Tầng thứ nhất (đánh giá tĩnh): Giá trị quân, giá trị vị trí, hoạt động của quân.

Tầng thứ hai (đánh giá động): Mối quan hệ tấn công và phòng thủ, phát hiện mối đe dọa, tổ hợp chiến thuật.

Tầng thứ ba (hiểu biết thế trận): Phán đoán giai đoạn ván cờ, đánh giá chiến lược trao đổi quân, đánh giá mối đe dọa chiếu bí.

Tầng thứ tư (ràng buộc luật): Phát hiện Tướng đối mặt, phát hiện chiếu dài và chase dài vĩnh viễn, phát hiện hết nước đi (stalemate).

3.4 Cấu Trúc của Mạng Đánh Giá NNUE

Cấu trúc của mạng đánh giá NNUE như sau:

Tầng đầu vào sử dụng tập đặc trưng HalfKP thưa. Kích thước vector đầu vào khoảng 40.000 (phiên bản thích ứng cho Cờ Tướng). Các đặc trưng là (vị trí Tướng của mình, loại quân địch + vị trí), sử dụng tính đối xứng bàn cờ để giảm số lượng đặc trưng.

Tầng ẩn bao gồm 1-2 tầng kết nối đầy đủ. Tầng đầu tiên thường có 512 hoặc 1024 nơ-ron, với hàm kích hoạt Clipped ReLU (cắt trong khoảng 0-127). Tầng thứ hai (nếu có) thường có 32 hoặc 64 nơ-ron. Tầng đầu ra là một nơ-ron đơn lẻ xuất ra giá trị đánh giá thế cờ (đơn vị là 1/100 giá trị Tốt).

Đặc điểm cập nhật gia tăng của NNUE: Sau mỗi nước đi, chỉ cần cập nhật các đặc trưng đầu vào liên quan đến quân đã di chuyển (thường từ vài đến vài chục đặc trưng), mà không cần tính toán lại toàn bộ mạng. Độ phức tạp tính toán của cập nhật gia tăng này là O(số thay đổi đặc trưng x độ rộng tầng ẩn), nhỏ hơn nhiều so với O(kích thước đầu vào x độ rộng tầng ẩn).

3.5 Sự Chuyển Đổi từ Đánh Giá Thủ Công sang NNUE

Các hàm đánh giá của engine Cờ Tướng đã trải qua một sự chuyển đổi cơ bản từ thủ công sang NNUE:

Kỷ nguyên đánh giá thủ công truyền thống (1989-2021):

  • Hàm đánh giá được thiết kế và điều chỉnh thủ công bởi các nhà phát triển
  • Số lượng đặc trưng hạn chế (hàng chục đến hàng trăm)
  • Tinh chỉnh phụ thuộc vào kinh nghiệm của nhà phát triển và hiểu biết về nguyên lý cờ
  • Độ chính xác đánh giá hạn chế nhưng hiệu suất tìm kiếm cao

Kỷ nguyên đánh giá NNUE (2022-nay):

  • Hàm đánh giá được học tự động bởi mạng nơ-ron
  • Số lượng đặc trưng lớn (hàng chục nghìn đặc trưng đầu vào)
  • Tinh chỉnh phụ thuộc vào chất lượng dữ liệu huấn luyện và thiết kế kiến trúc mạng
  • Độ chính xác đánh giá được cải thiện đáng kể nhưng tăng tính toán suy luận

Ưu điểm của NNUE so với đánh giá thủ công:

  1. Độ chính xác đánh giá cao hơn — NNUE có thể khám phá các mẫu tinh tế khó mã hóa thủ công
  2. Học tự động — không cần thiết kế thủ công các đặc trưng và trọng số
  3. Cải thiện liên tục — với dữ liệu huấn luyện tốt hơn, độ chính xác đánh giá có thể cải thiện
  4. Tính tổng quát mạnh — cùng một kiến trúc mạng có thể thích ứng với các luật và loại thế cờ khác nhau

Nhược điểm của NNUE so với đánh giá thủ công:

  1. Chi phí tính toán lớn hơn — suy luận mạng nơ-ron chậm hơn tổ hợp tuyến tính
  2. Huấn luyện phụ thuộc dữ liệu — yêu cầu dữ liệu huấn luyện chất lượng cao quy mô lớn
  3. Khả năng giải thích kém — khó hiểu tại sao NNUE đưa ra một đánh giá cụ thể
  4. Mô hình cụ thể — các loại thế cờ khác nhau có thể yêu cầu các mô hình khác nhau

Chương 4: Phân Tích Chuyên Sâu về Thuật Toán Tìm Kiếm

4.1 Từ Minimax đến Alpha-Beta

Tìm kiếm Minimax là nền tảng lý thuyết của trò chơi trên máy tính. Ý tưởng cơ bản của nó là: trong cây trò chơi, mỗi cấp đại diện cho quyết định di chuyển của một người chơi, giả định cả hai bên chọn nước đi có lợi nhất cho mình. Người chơi tối đa hóa (MAX) chọn nước đi có giá trị đánh giá cao nhất, trong khi người chơi tối thiểu hóa (MIN) chọn nước đi có giá trị đánh giá thấp nhất.

Định nghĩa hình thức của Minimax:

Minimax(s) = 
  - Nếu s là vị trí kết thúc: trả về đánh giá
  - Nếu đến lượt MAX đi: max(Minimax(s') với s' trong tất cả vị trí kế tiếp của s)
  - Nếu đến lượt MIN đi: min(Minimax(s') với s' trong tất cả vị trí kế tiếp của s)

Tỉa Alpha-Beta là một tối ưu hóa của Minimax. Nó duy trì hai giá trị:

  • alpha: Giá trị đảm bảo tốt nhất hiện tại của MAX (cận dưới)
  • beta: Giá trị đảm bảo tốt nhất hiện tại của MIN (cận trên)

Khi kết quả tìm kiếm của một nhánh nằm ngoài khoảng [alpha, beta], nhánh đó có thể bị tỉa (vì nó sẽ không ảnh hưởng đến quyết định cuối cùng).

Độ phức tạp lý tưởng của Alpha-Beta là O(b^(d/2)), trong đó b là hệ số phân nhánh (khoảng 40 đối với Cờ Tướng) và d là độ sâu tìm kiếm. Điều này có nghĩa là trong cùng một khoảng thời gian, Alpha-Beta có thể tìm kiếm độ sâu gấp đôi số vị trí.

4.2 Giới Thiệu PVS (Principal Variation Search)

PVS (Principal Variation Search) là một biến thể hiệu quả của Alpha-Beta. Ý tưởng cốt lõi của nó là: giả định rằng nước đi đầu tiên được tìm thấy (biến thể chính) là nước đi tốt nhất, sau đó sử dụng tìm kiếm cửa sổ rỗng (null-window) để xác minh liệu các nhánh khác có tốt hơn biến thể chính hay không.

Chìa khóa của tìm kiếm cửa sổ rỗng: Khi tìm kiếm các nhánh không phải biến thể chính, sử dụng cửa sổ (alpha, alpha+1). Nếu kết quả tìm kiếm lớn hơn alpha (có nghĩa là cửa sổ đã bị vi phạm), điều này chỉ ra rằng nhánh này có thể tốt hơn biến thể chính và sau đó tiến hành tìm kiếm cửa sổ đầy đủ (alpha, beta).

Ứng dụng thực tế của PVS trong engine Cờ Tướng: PVS cải thiện hiệu suất tìm kiếm khoảng 10-20%. Hiệu quả đặc biệt đáng kể trong Cờ Tướng với hệ số phân nhánh cao.

4.3 Thực Hành Tìm Kiếm Sâu Dần (Iterative Deepening)

Tìm kiếm sâu dần (Iterative Deepening Search - IDS) là chiến lược tìm kiếm tiêu chuẩn cho engine Cờ Tướng. Quy trình cơ bản của nó bắt đầu từ depth=1 và tăng dần độ sâu tìm kiếm từng lớp một.

Ưu điểm của tìm kiếm sâu dần:

  1. Kiểm soát thời gian: có thể trả về nước đi tốt nhất bất kỳ lúc nào
  2. Khởi động bảng chuyển vị: kết quả từ tìm kiếm nông có thể được sử dụng bởi tìm kiếm sâu hơn
  3. Ổn định tìm kiếm: tránh biến động mạnh trong tìm kiếm sâu hơn
  4. Cải thiện thứ tự nước đi: biến thể chính được tìm thấy ở cấp nông cung cấp tham chiếu thứ tự cho tìm kiếm sâu hơn

Chi phí của tìm kiếm sâu dần: mỗi lần đào sâu yêu cầu tìm kiếm lại toàn bộ cây. Tuy nhiên, trong thực tế, nhờ cải thiện thứ tự nước đi và khởi động bảng chuyển vị, tổng chi phí của tìm kiếm sâu dần chỉ cao hơn khoảng 5-15% so với tìm kiếm sâu nhất trực tiếp.

4.4 Các Kỹ Thuật Tỉa Chính

Tỉa nước đi rỗng (Null Move Pruning): Giả định đối thủ được đi hai nước liên tiếp trong khi ta vẫn không ở thế bất lợi; thì thế cờ hiện tại không đáng để tìm kiếm sâu. Việc sử dụng tỉa nước đi rỗng trong Cờ Tướng yêu cầu đặt ngưỡng an toàn (giá trị R, thường là 2-3 nửa nước) và tránh sử dụng nó trong các thế cờ quan trọng.

LMR (Late Move Reductions): Giảm độ sâu tìm kiếm cho các nước đi được xếp hạng thấp hơn trong thứ tự nước đi. Vì các nước đi xếp hạng thấp có chất lượng thấp hơn và không đáng để tìm kiếm đầy đủ. Mức giảm của LMR được điều chỉnh động dựa trên độ sâu tìm kiếm, loại nước đi (ăn quân/không ăn quân) và loại thế cờ (có đang bị chiếu hay không).

SEE (Static Exchange Evaluation): Đánh giá lãi hoặc lỗ ròng của một chuỗi trao đổi ăn quân. Sự thích ứng của SEE với Cờ Tướng bao gồm: sắp xếp thứ tự giá trị ăn quân, xử lý nước ăn nhảy của Pháo và ràng buộc luật rằng Tướng không thể bị lộ trước chiếu.

Tỉa vô ích (Futility pruning): Ở độ sâu nông (thường là vài nửa nước cuối), nếu thế cờ đủ ưu thế hoặc bất lợi, kết thúc tìm kiếm trực tiếp.

Razoring: Tương tự Futility nhưng được sử dụng ở các cấp sâu hơn.

Sử dụng kết hợp các kỹ thuật tỉa này, hiệu suất tìm kiếm của engine Cờ Tướng được cải thiện hàng trăm lần so với Alpha-Beta cơ bản.

Chương 5: Bảng Chuyển Vị và Công Nghệ Băm

5.1 Cập Nhật Gia Tăng của Băm Zobrist

Băm Zobrist (Zobrist hashing) là kỹ thuật băm thế cờ được sử dụng rộng rãi nhất trong engine Cờ Tướng. Đặc điểm cập nhật gia tăng của nó cho phép giá trị băm được cập nhật với độ phức tạp tính toán O(1) sau mỗi nước đi.

Quy trình cập nhật gia tăng:

  1. XOR loại bỏ số ngẫu nhiên của quân di chuyển tại vị trí cũ khỏi giá trị băm
  2. Nếu ăn quân, XOR loại bỏ số ngẫu nhiên của quân bị ăn tại vị trí cũ
  3. XOR thêm số ngẫu nhiên của quân di chuyển tại vị trí mới
  4. XOR cờ đến lượt đi (cho biết đến lượt đối thủ)
  5. Nếu trạng thái Tướng đối mặt đã thay đổi, cập nhật cờ đối mặt

Hiệu quả của cập nhật gia tăng cho phép engine nhanh chóng cập nhật giá trị băm trong mỗi lần gọi tìm kiếm đệ quy.

5.2 Chiến Lược Quản Lý Bảng Chuyển Vị

Kích thước và chiến lược thay thế của bảng chuyển vị có tác động trực tiếp đến hiệu suất của engine tìm kiếm.

Cấu trúc mục nhập: Mỗi mục nhập chứa chữ ký giá trị băm, độ sâu tìm kiếm, loại nút (giá trị chính xác/cận Alpha/cận Beta), nước đi tốt nhất và giá trị đánh giá.

Chiến lược thay thế:

  1. Thay thế ưu tiên độ sâu: giữ lại mục nhập có độ sâu tìm kiếm lớn hơn (ngay cả khi nó cũ hơn)
  2. Luôn thay thế (Always Replace): luôn thay thế mục nhập cũ bằng mục nhập mới
  3. Chiến lược lai: xem xét tổ hợp có trọng số giữa độ sâu và tuổi

Pikafish sử dụng chiến lược thay thế ưu tiên độ sâu vì các mục nhập có độ sâu lớn hơn cung cấp thông tin có giá trị hơn.

Xử lý xung đột băm: Các engine thường sử dụng chữ ký 32-bit hoặc 64-bit để phát hiện xung đột. Không gian chữ ký lớn hơn làm giảm xác suất xung đột nhưng tăng kích thước mục nhập.

Chương 6: Phân Tích Thực Tế về Engine Cờ Tướng

6.1 Các Mẫu Chiến Thuật trong Lối Chơi của Engine

Trong lối chơi của engine Cờ Tướng, các mẫu chiến thuật sau đặc biệt phổ biến:

Ghim (Pin): Hạn chế sự di chuyển của quân đối phương thông qua việc sắp xếp quân. Trong Cờ Tướng, Xe có hiệu ứng ghim mạnh nhất, trong khi ghim bằng Mã và Pháo cũng phổ biến.

Chĩa (Fork): Một quân đe dọa nhiều quân đối thủ cùng lúc. Chĩa của Mã là điển hình nhất (khả năng di chuyển tám hướng của Mã cho phép nó tấn công nhiều mục tiêu cùng lúc).

Chặn (Block): Ngăn chặn đường tấn công hoặc cấu hình phòng thủ của đối thủ thông qua việc sắp xếp quân.

Tổ hợp chiếu bí (Checkmate Combination): Chiếu bí đối thủ thông qua một chuỗi chiếu liên tục. Các tổ hợp chiếu bí bằng Pháo (như “Bu lông sắt,” “Song bôi tiến tửu,” v.v.) là những chiến thuật đặc trưng trong Cờ Tướng.

6.2 Phân Tích Các Ván Đấu giữa Engine và Kỳ Thủ

Sau năm 2006, engine Cờ Tướng đã vượt qua các Đại kiện tướng (Grandmaster) con người một cách toàn diện về sức mạnh chơi. Các điểm chính của phân tích so sánh:

Ưu điểm:

  1. Độ chính xác tính toán — engine không mắc sai lầm tính toán đơn giản
  2. Bao phủ toàn diện — engine không bỏ sót các biến thể quan trọng
  3. Đánh giá khách quan — engine không bị ảnh hưởng bởi cảm xúc hoặc yếu tố tâm lý
  4. Sức bền bỉ liên tục — engine không mệt mỏi trong các ván đấu cường độ cao

Nhược điểm:

  1. Hạn chế chiến lược — engine khó thực hiện các kế hoạch chiến lược dài hạn
  2. Thiếu sáng tạo — phong cách chơi của engine tương đối “máy móc”
  3. Khó khăn với thế cờ mở — độ chính xác đánh giá có thể giảm trong các thế cờ hoàn toàn mở

Với sự ra đời của NNUE, các nhược điểm trên đang dần được cải thiện. NNUE học các mẫu chiến lược từ dữ liệu huấn luyện, tăng cường đáng kể khả năng lập kế hoạch dài hạn.