基于区块链的毕业设计Ethereal – 空灵的

本文提供基于区块链的毕业设计国外最新区块链项目源码下载,包括solidity,eth,fabric等blockchain区块链,基于区块链的毕业设计Ethereal – 空灵的 是一篇很好的国外资料

Ethereal

Ethereal is a UCI-compliant chess engine which uses the alpha-beta framework. Ethereal is inspired by a number of open source projects and aims to serve as both a high-end engine and reference for other authors. The project strives to keep the source and its ideas, however complex, clean and digestible. To read more about some of the techniques used in Ethereal, see Ethereal’s Chess Programming Wiki Page

Development

The primary testing platform for Ethereal is OpenBench which is a Fishtest inspired framework which has been simplified and generalized so that other engines may make use of the framework with limited effort. The primary instance of OpenBench can be found here.

All versions of Ethereal in this repository are considered official releases, and are given a unique version number which can be found in uci.c, or by using the uci command inside the engine.

Elo Progression on CCRL over time 40/4

Elo Progression on CCRL over time 40/40

Configuration

Ethereal supports a number of relatively standard options. Definitions and recommendations are below. Most GUIs should support a method to set each option. If they do not, then refer to the UCI specification.

Hash

The size of the hash table in megabytes. For analysis the more hash given the better. For testing against other engines, just be sure to give each engine the same amount of Hash. 64MB/thread/minute is generally a good value. For testing against non-classical engines, reach out to me and I will make a recommendation.

Threads

Number of threads given to Ethereal while moving. Typically the more threads the better. There is some debate as to whether using hyper-threads provides an elo gain. I firmly believe that for Ethereal the answer is yes, and recommend all users make use of the maximum number of threads.

MultiPV

The number of lines to output for each search iteration. For best performance, MultiPV should be left at the default value of 1 in all cases. This option should only be used for analysis.

ContemptDrawPenalty

The number of centipawns added to the evaluation of the side to move. A positive value incentivizes preferring slightly negative evaluations to forced draws and leads to more decisive games. A small positive value is recommended in most situations.

ContemptComplexity

The number of centipawns added to the evaluation of the side to move when all minor and major pieces are on the board, progressively reduced to zero with less pieces. A positive value incentivizes Ethereal to favor lines where the opponent cannot force simplifications as easily and leads to more decisive games. It is expected to hurt performance against significantly stronger engines, but to help against weaker engines. The optimal value for best results thus depends on conditions.

MoveOverhead

The time buffer when playing games under time constraints. If you notice any time losses you should increase the move overhead. Additionally when playing with Syzygy Table bases a larger than default overhead is recommended.

SyzygyPath

Path to Syzygy table bases. Separate multiple files paths with a semicolon on Windows, and by a colon on Unix-based systems.

SyzygyProbeDepth

Minimum depth to start probing table bases (although this depth is ignored when a position with a cardinality less than the size of the given table bases is reached). Without a strong SSD, this option may need to be increased from the default of 0. I have a SyzygyProbeDepth of 6 or 8 to be acceptable.

Special Thanks

I would like to thank my previous instructor, Zachary Littrell, for all of his help in my endeavors. He was my Computer Science instructor for two semesters during my senior year of high school. His encouragement, mentoring, and assistance played a vital role in the development of my Computer Science skills. In addition to being a wonderful instructor, he is also an excellent friend. He provided the guidance I needed at such a crucial time in my life, allowing me to pursue Computer Science in a way I never imagined I could.


轻视复杂度

Ethereal是一个UCI兼容的国际象棋引擎,使用alpha-beta框架。Ethereal的灵感来自于许多开源项目,旨在作为高端引擎和其他作者的参考。该项目努力保持来源和它的想法,无论多么复杂,干净和易于消化。要了解更多有关Ethereal中使用的一些技术的信息,请参阅Ethereal的Chess Programming Wiki页面

移动开销

Ethereal的主要测试平台是OpenBench,它是一个Fishtest启发的框架,已经过简化和推广,以便其他引擎可以在有限的努力下使用该框架。OpenBench的主要实例可以在这里找到。

此存储库中的所有Ethereal版本都被视为官方发行版,并被赋予一个唯一的版本号,可以在uci.c中找到,也可以在引擎中使用uci命令。

CCRL上的Elo进展40/4

CCRL上的Elo进展40/40

Configuration

Ethereal支持许多相对标准的选项。定义和建议如下。大多数gui应该支持设置每个选项的方法。如果没有,请参考UCI规范。

Hash

哈希表的大小(以兆字节为单位)。对于分析,哈希值越大越好。对于针对其他引擎的测试,只需确保为每个引擎提供相同数量的哈希。64MB/线程/分钟通常是一个不错的值。对于非经典发动机的测试,请联系我,我会提出建议。

Threads

移动时给予Ethereal的线程数。通常线程越多越好。关于使用超线程是否能带来elo增益,还有一些争论。我坚信,对于以太而言,答案是肯定的,并建议所有用户使用最大数量的线程。

MultiPV

每次搜索迭代要输出的行数。为了获得最佳性能,在任何情况下,MultiPV都应保留为默认值1。此选项只能用于分析。

ContemptDrawPenalty

添加到要移动的边的评估中的蜈蚣数。一个积极的价值激励人们倾向于轻微的负面评价而不是强迫平局,从而导致更具决定性的比赛。在大多数情况下,建议使用较小的正值。

ContemptComplexity

当所有小调和大调棋子都在棋盘上时,增加到移动侧的棋子数,用较少的棋子逐渐减少到零。一个正的值激励空灵的人去偏爱那些对手不能轻易地强迫简化的路线,从而导致更具决定性的比赛。它预计会损害性能明显强的引擎,但有助于对抗较弱的引擎。因此,最佳结果的最佳值取决于条件。

MoveOverhead

在时间限制下玩游戏时的时间缓冲区。如果你注意到任何时间损失,你应该增加移动开销。另外,当使用Syzygy表基时,建议使用大于默认值的开销。

SyzygyPath

到Syzygy表基的路径。在Windows上用分号分隔多个文件路径,在基于Unix的系统上用冒号分隔。

SyzygyProbeDepth

开始探测表基的最小深度(尽管当达到基数小于给定表基大小的位置时,此深度将被忽略)。如果没有强大的SSD,此选项可能需要从默认值0增加。我有一个6或8岁的睡眠障碍是可以接受的。

Special Thanks

我要感谢我的前任导师扎卡里·利特尔,他在我的努力中给予了我所有的帮助。他是我高中时两个学期的计算机科学讲师。他的鼓励、指导和帮助对我计算机科学技能的发展起到了至关重要的作用。他不仅是一位出色的导师,还是一位优秀的朋友。在我生命中如此关键的时刻,他为我提供了所需的指导,使我能够以我从未想象过的方式从事计算机科学。

部分转自网络,侵权联系删除区块链源码网

www.interchains.cc

https://www.interchains.cc/16634.html

区块链毕设网(www.interchains.cc)全网最靠谱的原创区块链毕设代做网站 部分资料来自网络,侵权联系删除! 最全最大的区块链源码站 !
区块链知识分享网, 以太坊dapp资源网, 区块链教程, fabric教程下载, 区块链书籍下载, 区块链资料下载, 区块链视频教程下载, 区块链基础教程, 区块链入门教程, 区块链资源 » 基于区块链的毕业设计Ethereal – 空灵的

提供最优质的资源集合

立即查看 了解详情