Về AlphaZero vs cá hồi phơi khô không có muối trận đấu, câu hỏi này đã được đề cập ở đây bởi SmallChess .
Bỏ qua AlphaZero (sử dụng thói quen chuyên biệt Monte Carlo 1 trong việc khám phá các đường chơi), được xây dựng để không mang tính quyết định khi xây dựng, đối với các động cơ cờ vua dựa trên kinh nghiệm thông thường, như Stockfish và các loại khác (mặc dù có khác các động cơ có thói quen dựa trên MC, AFAIK Rybka đã từng có tính năng như vậy), nguồn gốc của tính ngẫu nhiên nói chung chỉ là hệ quả của các khía cạnh kỹ thuật trong quá trình thực hiện, thay vì ngẫu nhiên có chủ ý được đưa ra một cách thuật toán trong quá trình ra quyết định của động cơ. Nói một cách trừu tượng, một lý do cho điều đó là thực tế là các động cơ không chạy theo cách thức hoàn toàn tuần tự (thực hiện hết nhiệm vụ này đến nhiệm vụ khác). Thay vào đó, để làm cho các động cơ hiệu quả hơn, chúng thực hiện các tìm kiếm song song trong các nhánh khác nhau của cây di chuyển có thể. Họ làm như vậy thông qua cái được gọi là đa luồng (hoặc xử lý nhưng điều đó hơi khác một chút). Vì vậy, nhiều luồng của CPU đồng thờithực hiện các hoạt động để tìm kiếm cây (và lưu trữ các đánh giá của các vị trí đã truy cập), vì vậy hãy tưởng tượng mỗi luồng được gán một cây con. Vấn đề với kiểu triển khai này là việc thực thi tổng thể của các luồng trở nên phụ thuộc rất nhiều vào tất cả các điều kiện (thời gian chờ, hoán đổi RAM, ...), vì vậy cuối cùng, một biến thể chính có thể được chọn mà không cho phép tất cả các biến thể khác chủ đề để kết thúc tìm kiếm của họ.
Điều này thực sự xảy ra thường xuyên vì động cơ được thiết lập để đưa ra quyết định trong một khoảng thời gian nhất định, vì vậy quản lý thời gian làm thay đổi hành vi. Bạn cũng có thể hoàn nguyên tuyên bố này bằng cách nói: biết thuật toán và thực hiện các thói quen phân luồng xác định là không đủ để dự đoán một cách đáng tin cậy trạng thái của chương trình sau bất kỳ thời gian nào. Tất nhiên, nếu người ta luôn cho phép tất cả các luồng kết thúc tìm kiếm của họ và không có vấn đề tương tranh nào trong quá trình thực thi đó (ví dụ, một luồng cố gắng truy cập vào một bộ đệm nhất định không thể truy cập được), thì hành vi đó thực sự sẽ được tái tạo hoàn toàn cho tất cả mọi thứ khác là cùng 2 .
1 : Cùng với thực tế là thông qua đào tạo bổ sung (ví dụ như tự chơi), mạng lưới thần kinh của nó tiếp tục phát triển (các tham số được điều chỉnh lại) hoặc nếu bạn sẽ chức năng đánh giá của nó không có định nghĩa cố định, cố định (không giống như các công cụ dựa trên heuristic ).
2 : Ngay cả khi đó, như bạn đã nói, ở cấp độ mở, với một cuốn sách mở đầu, đôi khi có những quyết định ngẫu nhiên có chủ ý được thực hiện bởi động cơ về việc chọn biến thể nào. Tương tự, bên ngoài giai đoạn mở đầu, có thể có những khoảnh khắc mà nhiều biến thể gần với các đánh giá bằng nhau (trong độ phân giải được chọn cho Eval), sau đó dựa trên thiết kế, cuối cùng có thể chọn một biến thể. Cuối cùng, ở cấp độ cài đặt động cơ, bạn cũng phải cẩn thận, ví dụ độ sâu của thời gian tìm kiếm và thời gian suy nghĩ được chọn cho mỗi động cơ (và liệu chúng có thể tính toán thêm trong thời gian suy ngẫm của nhau không).