Questions tagged «engines»

与象棋引擎有关的问题:任何能够下棋/分析象棋位置的计算机程序。

15
纯训练有素的国际象棋AI
据我了解,在移动之前,似乎所有强大的国际象棋软件 检查成千上万或可能的未来职位; 根据某种启发式方法(称为评估函数)评估每个未来头寸; 分别评估每个将来的职位是否处于静止状态,以决定是否从该职位中探索延续性; 从可用动作中选择极小值;和 使用一本开幕书。 到现在为止还挺好。但是,国际象棋程序的强度似乎主要取决于其评估和静态启发式方法的质量,也取决于其开局书,从计算机的角度来看,这是另一种启发式方法。显然,这种象棋程序对游戏的理解程度与对启发式算法的理解程度一样。该程序似乎没有自己的见解。 有没有人写过具有自己见识的象棋程序?那是自己学习游戏吗?那训练自己吗?当然,这样的程序将提供游戏规则,并且可能还会进一步提供原始的minimax和静态基础结构,并且如果发现一个强迫伴侣,它将能够识别并起诉该伴侣。但是,不会提供启发式方法。例如,不会被告知将游戏开向中锋,也不会被要求比骑士更喜欢新手,也不会被告知西西里人的防守是什么。它必须自行推断出这些原理(或者可以想象发现更好的原理)。 以其纯粹的形式,永远不会为此类程序提供大师级的游戏来学习,而只能提供自己的游戏来对抗自己。只有经过全面的自我训练,它才能在人类竞争中发挥作用。 是否存在这种纯粹的国际象棋AI?机械象棋的自动编码曾经出现过吗?确实,老土耳其人能自学吗? 这似乎是纯粹的国际象棋AI失败的简短通知。 (与切线相关的问题早先出现在此站点上,关于国际象棋开局的计算机化研究。) 更新 在撰写本文时,@ WesFreeman,@ GregE提出了三个不同的,有启发性的答案。和@Landei。强烈建议您同时使用这三个方法,根据网站政策,我正式接受其中一个而排除其他方法时会感到内。让我在这里感谢并表达对这三个方面的赞赏。 问题要简洁。但是,对答案的响应可能会运行更长的时间。因此,有兴趣的读者可以直接从此处跳到答案,然后,如果仍然有兴趣,可以返回以阅读随后的较长更新。 当我问这个问题时,我想到的是以下内容。 假设在香格里拉郊区一个假设的村庄,人们从未听说过象棋。在您短暂访问期间,您会教村长老游戏规则,但从不指导他们任何游戏原理。两名长者在其余长者观看时玩游戏,而您(不希望通过嘲笑打乱游戏)将您的评论局限于规则问题。当您留在香格里拉时,不会进行事后验尸,也不会再下棋或进行讨论。但是,当您离开而永不返回时,您将国际象棋摆在后面。 在您缺席的情况下,长者向人们传授游戏。有些人后来在闲暇时间玩一些游戏,有些人则热情洋溢,他们自己制作国际象棋。 对于这样的村民来说,似乎不是马上就比骑士更好,但是人们可能仍会逐渐在许多游戏中找出棋手的相对优势。同样,对于他们来说,可能并不立即意识到1. a4开局不佳:他们只能尝试并考虑结果。 村民对游戏的理解最终会在多大程度上与外界的理解相融合?缺少开幕书,他们会开发自己的新颖作品吗?当然,最初人们不会期望村民的空缺表现很好,但据我所知,在经历了几个世纪的孤立之后,村民们可能会发展出一个受人尊敬的开放曲目。 200年后,当下一位旅行者注意到这些开放空间时,它们的任何一个独立开发的开放空间是否会对外界证明是有趣的?香格里拉会给世界带来新颖,新颖的香格里拉防御吗? 如果是这样的话,那么,关于我最初对国际象棋AI的疑问,我所想到的或多或少是:国际象棋AI或多或少地会复制Shanrgi-La郊区村民的国际象棋进步吗? 考虑到下面@Landei的回答中的Sussman的故事,毫无疑问,我的村民会给游戏带来某些先入之见。例如,他们会带来一个理解,即拥有更多有用的东西总比拥有更少的有用,因此,捕获对手的西洋棋棋子通常比遭受己方的棋子更可取。对于文学来说,香格里拉虚构人物的地域性是一个问题,但人们可以假设,他们会认识到指挥更多空间的位置要好于指挥较少空间的位置。任何聪明的新手,一旦展示了一套国际象棋,并按照游戏规则进行了指导,就可以推断出女王可能比棋子更好,因为女王可以进行多达27步动作, 因此,我的问题不必解释为暗示绝对的,萨斯曼式的禁令,禁止将任何种类的知识带到棋盘上。而是暗示对先入为主的国际象棋特定知识的一般禁令。毕竟(过去不考虑游戏规则的演变问题),在过去的某个时候,玩过第一盘国际象棋。也许第一个玩家确实开了1. a4; 但最终他学得更好,并向门徒传授了所学到的知识。他反过来又一代又一代地学了更多东西,教了更多东西,给了我们Kasparov。 AI只能在几周内而不是几个世纪内做不到这样的事情吗? 我想,柏拉图会持怀疑态度。休ume会更乐观,但问题不再仅靠哲学来解决。我们现在拥有用于测试该提议的电子计算机,我想知道AI技术的现状是什么。当前最好的国际象棋AI似乎是完全不智能的专家系统,在直觉上一无所获。我想知道在某种意义上实际上考虑过国际象棋的更广泛的AI在自学游戏方面是否取得了相当大的成功。 我认为答案是否定的,可能不是。
46 engines 

11
Alpha Zero如何“更人性化”?
我对AlphaZero有一个天真的问题。我已经看到它被描述为比其他计算机更“人性化”地玩耍,但是无论做什么,通过这样做它都能获得大约100个ELO积分。卡斯帕罗夫(Kasparov)和许多其他人都声称,与计算机协作的强大人员将击败一台强大的计算机(也许比大约100 ELO ??)。因此,一个显而易见的问题是,AlphaZero与“半人马”组合将如何比较? 仅看了几场比赛,我注意到大多数计算机都在玩开放式游戏,以最大限度地提高自己的机动性,但是AlphaZero似乎非常担心限制对手的机动性。在人类玩家中,我将其描述为风格问题,而不是或多或少的人类。

6
关于在Linux上使用好的国际象棋引擎的建议
我将GNUChess与Knights客户端一起使用(Knights似乎还不成熟;崩溃很常见)。Linux上是否有等效的Chessmaster?好客户在FICS之类的服务器上玩呢? 我目前使用Jin玩FICS。但是我认为Jin并没有提供服务器的所有功能,例如Jin中没有聊天功能。
33 engines  linux 

2
了解AlphaZero
最近,有消息传出,Alphabet的DeepMind研究团队已经扩展了他们的机器学习引擎,可以同时玩象棋和象棋。显然,经过仅仅几个小时的自学,这意味着仅根据给定的游戏规则与自己进行比赛,其在国际象棋中的表现就已经超过了当前最顶尖的引擎,如Stockfish 8。我个人还不知道比赛是如何精确设置的,例如在设置Stockfish的条件下执行,因为如果计算时间有限,引擎的性能将非常差。无论如何,这都是一个非常令人印象深刻的成就,因为即使事实证明,如果以最佳的方式设置Stockfish,又经过很少的培训,AlphaZero的游戏水平将再次超越,这意味着AlphaZero的性能从根本上超越了任何现有产品。基于启发式评估功能的标准国际象棋引擎。 现在,鉴于此消息,如果有人能详细说明与我们都习惯使用的标准引擎相比,机器学习的象棋引擎在工作方式上的主要区别将非常好。更具体地说: 最后,通过机器学习方法训练的AlphaZero使用的评估功能不是另一个启发式评估功能吗?如果是的话,可以公平地说这两个引擎的评估功能之间的根本区别在于,Stockfish具有人工手动优化的优化评估功能,这意味着要优化的功能的定义是固定的,而对于AlphaZero,目标评估功能是否通过其他培训(例如通过自玩游戏)不断地重新定义?使后者成为一种更加动态的方法。 最终,模糊地讲,像Stockfish的引擎将其评估功能应用于可能的动作树,确定要保留的分支,并丢弃更深的分支,然后通过更深的混凝土再次通过其评估函数对每个分支进行分析,可以找出哪个分支产生了最高的价值,而哪个分支成为主要变化(当然,此过程中有许多先进的技术可以有效地修剪这棵大树)。这意味着,对于每个职位,Stockfish都必须重复这一极其具体的程序才能做出决定。相比之下,我认为AlphaZero所做的事情非常不同,即,它不依赖于对给定位置的可能移动树的具体分析,而是其评估函数本质上为该位置分配了一个值(直观上类似于放置类似于训练过的所有其他位置的当前位置),而无需执行具体操作用Stockfish甚至人类玩家的方式进行分析。这完全是AlphaZero或受过类似训练的机器学习引擎的运行的声音吗? 我们知道国际象棋位置的空间足够大,以至于任何在其中对所有位置进行采样的尝试在原理上都是完全徒劳的(EXPTIME复杂性),这表明通过自我游戏进行的任何训练都不足以使已经探索了所有位置,那么尽管可能通过自玩游戏探索了空间中的一小部分位置,但最终结果又如何呢?这里发挥的关键思想是什么? 我的猜测是,AlphaZero具有一种非常理想的方式,可以将任何给定位置(即使是新位置)与其训练集中的先前访问过的位置进行比较,比较越接近,从该比较中得出的评估就越有效。例如,当它在游戏5中玩了移动Bg5时,它必须在训练过程中探索过类似的结构,即,它能够识别出该位置实质上等于(可能是完全)在训练过程中研究过的一个不同位置。类似于通过机器学习如何实现人脸识别,因此得出结论,Bg5应该是最好的选择,就像在其他(或那些)其他类似位置一样。这完全是正确的猜测吗?我不知道这种比较 这样就完成了,因为肯定不可能存储所有受过训练的位置并每次都无法解析它们。 这仅是为了获得对AlphaZero的工作原理以及给定职位如何做出决策的见解。

5
国际象棋引擎如何“思考”?
我想知道的是如何对引擎进行编程以查找运动。我确定他们首先会计算出最强制的行,例如捕获和检查。但是,微妙而深入的位置移动又如何呢?他们似乎也很快找到了它们(通常来说。当然,他们偶尔会错过这样的举动)。像这样,他们如何编程以寻找安静的动作/位置思想?他们不能仅仅强行采取任何行动,因为那会花费太长时间,因此应该有一些聪明的方法让他们真正迅速地达到最佳行动。我对了解这一点很感兴趣,因为我认为这也会帮助玩家思考现实世界中的棋盘。

2
电脑如何改变人类下棋的方式
几年前,Vishy Anand在一次采访中提到,计算机已经改变了人类下棋的方式。显然,计算机在开场准备方面有很大帮助,但是还有哪些其他具体示例? 由于计算机分析,是否存在某些开局或残局的评估发生了很大变化? 借助计算机,是否找到了新的原则或策略? 大师是否专门训练玩计算机动作而不是依靠传统原理?

4
七个人桌底桌的状态是什么?
有完整(或几乎完整)的六个人形底牌桌供下载,甚至可以在线下载。 七个人桌基地的状况如何?这个领域是否仍在积极发展?已经取得了多少进展?是否有任何估计的时间来完成它,或者至少完成得足以覆盖真实游戏中所有常见的七个人的位置?

3
是否有找到最佳“实用”举动的引擎?
一个标准的国际象棋引擎会在双方都假设最佳的情况下找到自己认为最佳的举动。但是,此举可能会导致微不足道的优势或棘手的路线,很容易导致具有特定能力的人类玩家犯错。是否有程序为中级玩家找到最佳的“实用”举动?例如,它可能会选择一个导致非常强大的进攻位置的举动,即使对手可以通过完美的防守来防御,也很可能会犯错。
25 engines 

6
如何在Ubuntu上安装鳕鱼?
有一个简单的指南如何在ubuntu 上安装鳕鱼吗? 从主站点我找不到任何信息,并且github存储库没有提供许多详细信息。 如果已经安装并开始运行它的人可以分享这些步骤,我将非常感激。

7
AlphaZero与Stockfish比赛中使用的硬件
我知道AlphaZero必须使用与普通Stockfish不同的硬件。我希望硬件对引擎强度有很大的影响。这就是为什么我想知道是否曾尝试为两者提供可比较的硬件。另外,“可比”在这里意味着什么? 具体来说,我读到人们抱怨: 仅给鱼类提供1 GB的缓存,并且 1分钟/移动的时间限制(这将给Stockfish带来什么不利影响?)

4
深蓝vs卡斯帕罗夫-后果
如果计算机以错误的方向搜索或评估对手不愿考虑的位置(通过本能和/或推理),每秒评估200M个位置并具有20多个动作的搜索树可能不足以击败世界冠军)。编码策略容易,编码策略困难。 深蓝人类在1997年击败卡斯帕罗夫时是否得到了协助?有任何证据吗? 如今,可以在“通用机器”上运行的商业软件国际象棋游戏击败国际象棋大师吗?

6
如何从零开始确定一块的价值?
假设我们有一个标准的国际象棋设置,但是我们做了些微的改动,以便(例如)典当现在可以在任何移动中向前移动两个正方形,而不仅仅是它们的初始移动。即使假设我们仍可以使用已建立的点值(N = B = 3 R = 5 Q = 9或您希望使用的任何系统),如何找出经过改进的典当值多少钱? 我最初的想法是用修改后的棋子功能对(重新)编程国际象棋引擎进行编程,以几种不同的方式更改其内部值,然后举行一系列引擎比赛,直到可以缩小近似值为止。这是可行的(因为所有点值都是近似值且根据情况而定),但是零件的点值比计算机要长得多,因此必须有其他可用方法。 有任何想法吗? 注意:实际上,我并不是要寻找软件建议等。我很好奇,做到这一点的最佳方法是什么。

8
电脑在破坏国际象棋吗?
这些天来,我一直在观看候选人比赛,我无法避免地注意到,球员们对计算机家庭准备工作的渴望/恐惧“太多了”。 例如: 1)在游戏Anand vs Kramnik(第4轮)中,Kramnik在第22步刚打出了“令人难以置信”的Nd4动作(家用电脑准备),给了骑士“免费”的补偿,而没有任何明显的补偿,随后有四个动作了解Nd4只是强制平局: 阿南德(Viswanathan)-克拉姆尼克(Kramnik),弗拉基米尔(Vladimir),自由泳候选人2014、2014-03-17、1 / 2-1 / 21. d4 Nf6 2. c4 e6 3. Nf3 d5 4. Nc3 dxc4 5. e4 Bb4 6. Bg5 c5 7. Bxc4 cxd4 8. Nxd4 Bxc3 + 9. bxc3 Qa5 10. Bb5 + Nbd7 11. Bxf6 Qxc3 + 12. Kf1 gxf6 13。 h4 …

1
电脑象棋是否表现出预期的“抽奖死亡”?
在不同的时间,甚至可以追溯到100多年或更久以前,人们一直在预测国际象棋的“平局死亡”,这意味着顶级玩家将变得如此出色,每场比赛都会平局。 在1984年的世界锦标赛上,当球员抽出40次精疲力尽时,这个预言似乎变成了现实。连续16局比赛在那场比赛中甚至连一连串。 现在,计算机在国际象棋中已经超越了人类的能力,它们比顶尖的人类玩家绘画的多还是少?他们表现出抽奖死亡吗?

8
一种新的AI胜出。类似的AI可以在国际象棋上获胜吗?它可以实现纯粹的自我训练吗?
在此站点上最受欢迎的问题之一是关于纯粹自我训练的国际象棋AI的前景。 如今,ChessBase分散了对FIDE候选锦标赛的关注,报告说一种新的AI首次击败了颇具挑战性的围棋游戏的领先者,该棋已经抗拒了象棋风格的AI多年。该报告的初步阅读表明,新型围棋AI与国际象棋AI不同,但更像是通用游戏(GGP)AI。但是,ChessBase的文章并未使用GGP术语,而是似乎说go AI可以在简单的视频游戏中获胜。 这样的获胜围棋AI稍加调整就无法在国际象棋上获胜吗?如果是这样,那么这样的AI是否显示出有望实现纯自我训练的能力,而对于早期问题的几个出色答案早已在前面进行了讨论,而当时还不可能呢?为什么或者为什么不? 我怀疑还没有关于我的问题的真正完整,全面的答案,因此,即使是基于相关专业知识的部分答案也将不胜感激。 有关其他参考,请参阅此相关问题和解答。 更新 当上述问题在五天前首次发布并给出以下一些好的答案时,有关go AI获胜的第一则新闻刚刚出现。从那时起,出现了更多的信息和评论。 自那以来,特别有趣的是一个颇具可读性的五边圆桌讨论,其中乔纳森·舍弗(Jonathan Schaeffer)表示: 从人机游戏中学习有助于加速程序的学习。AlphaGo可以学会自己成为强大的玩家,而无需使用人工游戏。学习过程将花费更长的时间。 根据圆桌会议的主持人,谢弗是“阿尔伯塔大学计算机科学教授和解决跳棋者”。因此,大概他可能有资格发表评论。 有关更多信息,请参见以下公开讨论的记录,其中许多参与者似乎比往常更了解情况。讨论在比赛期间进行。 一年半后的进一步更新:评论者@MarkS。写道: 这只是一条评论,因为它是关于围棋而不是国际象棋的,但是AlphaGo Zero仅仅通过被告知谁获胜(而不是最终比分)而获得了“纯粹的自我训练”,并且比击败Lee Sedol的AI更强大,效率更高。 。有关更多信息,请参见deepmind.com/blog/alphago-zero-learning-scratch
19 engines 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.