official-stockfish/Stockfish

GitHub: official-stockfish/Stockfish

Stockfish 是一个免费、开源且实力顶尖的 UCI 国际象棋引擎,用于深度分析棋局并计算最佳着法。

Stars: 14962 | Forks: 2809

[![Stockfish](https://stockfishchess.org/images/logo/icon_128x128.png)][website-link]

Stockfish

一个免费且强大的 UCI 国际象棋引擎。
[浏览 Stockfish 文档 »][wiki-link]

[报告 Bug][issue-link] · [开启讨论][discussions-link] · [Discord][discord-link] · [博客][website-blog-link] [![构建](https://img.shields.io/github/actions/workflow/status/official-stockfish/Stockfish/stockfish.yml?branch=master&style=for-the-badge&label=stockfish&logo=github)][build-link] [![许可证](https://img.shields.io/github/license/official-stockfish/Stockfish?style=for-the-badge&label=license&color=success)][license-link]
[![发布](https://img.shields.io/github/v/release/official-stockfish/Stockfish?style=for-the-badge&label=official%20release)][release-link] [![提交](https://img.shields.io/github/commits-since/official-stockfish/Stockfish/latest?style=for-the-badge)][commits-link]
[![网站](https://img.shields.io/website?style=for-the-badge&down_color=red&down_message=Offline&label=website&up_color=success&up_message=Online&url=https%3A%2F%2Fstockfishchess.org)][website-link] [![Fishtest](https://img.shields.io/website?style=for-the-badge&down_color=red&down_message=Offline&label=Fishtest&up_color=success&up_message=Online&url=https%3A%2F%2Ftests.stockfishchess.org%2Ftests%2Ffinished)][fishtest-link] [![Discord](https://img.shields.io/discord/435943710472011776?style=for-the-badge&label=discord&logo=Discord)][discord-link]
## 概述 [Stockfish][website-link] 是一个**免费且强大的 UCI 国际象棋引擎**,源自 Glaurung 2.1,能够分析棋局并计算最佳走法。 Stockfish **不包含图形用户界面** (GUI),而 GUI 是显示棋盘和简化走法输入所必需的。这些 GUI 独立于 Stockfish 开发,可在网上获取。请**阅读您所选 GUI 的文档**,了解如何配合使用 Stockfish。 另请参阅 Stockfish [文档][wiki-usage-link] 以获取更多使用帮助。 ## 文件 此 Stockfish 发行版包含以下文件: * [README.md][readme-link],即您当前正在阅读的文件。 * [Copying.txt][license-link],包含 GNU 通用公共许可证版本 3 的文本文件。 * [AUTHORS][authors-link],包含项目作者列表的文本文件。 * [src][src-link],包含完整源代码的子目录,其中包括一个可用于在类 Unix 系统上编译 Stockfish 的 Makefile。 * 一个扩展名为 .nnue 的文件,存储用于 NNUE 评估的神经网络。二进制发行版会将此文件嵌入其中。 ## 贡献 __请参阅 [贡献指南](CONTRIBUTING.md).__ ### 捐赠硬件 改进 Stockfish 需要大量的测试。您可以通过安装 [Fishtest Worker][worker-link] 并查看 [Fishtest][fishtest-link] 上的当前测试来捐赠您的硬件资源。 ### 改进代码 在 [chessprogramming wiki][programming-link] 中,Stockfish 使用的许多技术都有详细的背景信息解释。 [关于 Stockfish 的章节][programmingsf-link] 描述了 Stockfish 使用的许多功能和技术。然而,它是通用的,而非专注于 Stockfish 的具体实现。 引擎测试在 [Fishtest][fishtest-link] 上进行。 如果您想帮助改进 Stockfish,请先阅读此[指南][guideline-link],其中解释了 Stockfish 开发的基础知识。 如今关于 Stockfish 的讨论主要在 Stockfish [Discord 服务器][discord-link] 中进行。这也是询问有关代码库以及如何改进它的最佳场所。 ## 编译 Stockfish Stockfish 支持 32 或 64 位 CPU、特定的硬件指令集、大端序机器(如 Power PC)以及其他平台。 在类 Unix 系统上,使用 `src` 文件夹中包含的 Makefile 直接从源代码编译 Stockfish 应该很容易。通常,建议运行 `make help` 以查看 make 目标列表及其相应描述。一个适用于大多数 Intel 和 AMD 芯片的示例: ``` cd src make -j profile-build ``` 所有平台的详细编译说明可以在我们的[文档][wiki-compile-link]中找到。我们的 Wiki 还包含有关 Stockfish 支持的 [UCI 命令][wiki-uci-link] 的信息。 ## 使用条款 Stockfish 是免费的,并根据 [**GNU 通用公共许可证版本 3**][license-link] (GPL v3) 发布。本质上,这意味着您可以自由地对程序执行几乎任何您想做的操作,包括在朋友间分发、从您的网站提供下载、出售它(单独或作为某个大型软件包的一部分),或将其作为您自己的软件项目的起点。 唯一真正的限制是,每当您以某种方式分发 Stockfish 时,您必须始终包含许可证和完整的源代码(或指向可找到源代码位置的指针),以生成您正在分发的确切二进制文件。如果您对源代码进行任何更改,这些更改也必须在 GPL v3 下提供。 ## 致谢 Stockfish 使用的神经网络是基于 [Leela Chess Zero 项目提供的数据][lc0-data-link] 训练的,该数据根据 [开放数据库许可证][odbl-link] (ODbL) 提供。
标签:C++, Fishtest, GPLv3, NNUE, Python 3.9+, Stockfish, UCI协议, 人工智能, 分布式测试, 博弈论, 国际象棋, 数据擦除, 最佳着法计算, 游戏AI, 用户模式Hook绕过, 神经网络, 算法, 象棋分析, 象棋引擎