• 微信群
  • 棋牌群
  • 个人微信
  • 公众帐号
  • 微商货源
  • 红包软件
  • 微商学院
  • 福利活动
千万群发布须知!
首页 >微商学院 >头条 >《骑马与砍杀2》怎么玩?羊狼棋BaghChal的介绍与分析
资讯详情 发布信息>>
《骑马与砍杀2》怎么玩?羊狼棋BaghChal的介绍与分析
资讯类别: 头条 浏览次数: 303 人已查看 发布时间: 2020-07-31 16:39:42
  不知道在我的读者之中有没有人玩一款叫做《骑马与砍杀2》的游戏?如果有人玩过,就知道《骑砍2》游戏中的各个酒馆里包含有各种古老的棋类游戏,而BaghChal就是巴丹尼亚酒馆中的棋类游戏的一种。

  BaghChal这个词语来自尼泊尔语,直译过来就是“虎棋”的意思。在英文中这个游戏又被称作“Tiger and Goats”,意思就是“虎和羊”。不过在《骑砍2》中的汉化组把这个棋类游戏称作“羊狼棋”(和游戏背景有关:游戏中又没有尼泊尔),而在百度百科中被称作“尼泊尔虎棋”。我们也不妨称呼为羊狼棋。首先我们简单介绍一下这个游戏:

  羊狼棋是一种非对称的竞技游戏。具体规则在上图中有了一部分介绍,我们再将其具体说一下:

  棋子皆放在棋点。

  四枚狼棋子皆放在棋盘的四角落。羊棋子则先置于羊方手边(共二十枚)。

  任何棋子皆须需棋盘上的斜纵横线移动。

  羊方先行。

  每回合羊方可能有二种行动,以落子为优先,当所有己棋都已不在手边方可移子。

  落子:将一枚己棋置于空棋点处。

  移子:沿斜纵横线任移动一己子到邻边的空棋点。

  每回合狼方能选择以下两种行动之一:

  吃子:沿线跳过一枚邻边格的羊棋子落到同方向的紧连空点,然后把被跳过的敌棋移出棋盘不再使用,可以连跳吃。

  狼方以减少羊棋子剩下七到五枚获胜。羊方以让所有狼棋不能移动获胜。
《骑马与砍杀2》怎么玩?羊狼棋BaghChal的介绍与分析
  通常来说,当狼方吃掉羊方的五枚棋子时狼方获胜。另外,如果双方都不能取得获胜,那么最终形成平局。

  接下来我们会从两个角度来讲羊狼棋的游戏技巧。首先我们从人类经验的角度来审视这个游戏。对于这样的一个5×5的棋盘,如果羊方想不被狼方吃掉,那么棋子就尽量不要过于分散,最好趁早“抱团”,这样狼方就无法跳过羊方棋子了。而且羊方最好一开始走在边上的中心位置。考虑到游戏的对称性,羊方只有5种开局方式(1路2种,2路两种,3路一种)。其中1路和2路的有两种挨着狼方棋子,狼方可以马上将羊棋子吃掉;边上的中心位置可以保证羊方棋子不会被立即吃掉。而对于剩下的两种:

  如上图所示,如果羊方第一手走在1的位置,狼方的左下棋子向2的位置移动,那么羊方已经不可避免的失去一只羊。而如果羊方第一手走在最中间的位置。那么进程如上图的右侧所示。进行到第8手,狼方形成“双吃”,羊1和羊3不可避免的丢掉一个。总之,羊方首先应该做的就是尽可能的多摆放不会被吃掉的羊棋子,等到所有的棋子都摆放到棋盘上时,尽可能想办法将狼棋子困住。而狼方似乎没有显然的技巧。狼方除了等待吃子,只能选择到处移动。而狼方最大的机会就是羊方摆放完全部棋子之后,羊方必须移动,此时狼方才有吃掉羊子的可乘之机。用国象大师塔塔科维的话来讲,“战术家在有所行动时知道怎么做;而战略家在无所行动时知道怎么做。”从这个角度讲,狼方只能做一个战术家。

  下面我们用一个全新的视角来看待这个游戏(以下是Lim Yew Jin和Jurg Nievergelt两个人的研究成果)。之前说了那么多,我们并不能确定最终是羊方获胜,狼方获胜亦或是平局。我们不妨将羊狼棋分成两个主要阶段:第一阶段是羊方在棋盘上落子S0,第二个阶段是羊方全部落子结束,羊方移子的阶段Sk。其中第二阶段的k代表棋盘上的空点数量,而k的取值范围是从1到5,狼是4枚棋子,羊是21-k枚。将棋局分成这两种状态有助于我们接下来的讨论。棋盘具有对称性,对称棋局的胜负是没有影响的,如果两个棋局状态在翻转和旋转意义下保持一致,那么就可以归结在同一个等价类里。对于这种问题我们可以采用Polya计数理论来计算Sk下的所有棋局状态。

  我们会发现,S0比其他几种棋局状态Sk的总和还要多。S0远远比之后的棋局状态要复杂,且在羊方落子状态时很有可能不慎被狼方吃掉,影响羊方移子时期的状态。而对于Sk中的88260972种状态,我们可以采用回溯法分析其中的胜负分布:

  从表中我们大致可以看出,除非狼已经吃掉了2只羊,否则几乎没有什么胜利的希望。狼方如果面对的是棋盘上的19只羊,无论是谁先移子,狼队的获胜几率都不超过2%。而狼队在吃掉2只羊和3只羊的分界上,胜率具有明显的跳变。尽管如此,即使狼吃了4只羊,羊只有16只,羊还是有一点胜利的可能。

  此时我们关注一下S0。之前提到,S0的状态数非常大且难以分析,我们几乎不可能去遍历整个搜索树。而整个S0最多有39手(羊最多摆放20枚羊棋子,外加狼的19手),我们不可能从第一手开始直接搜到39手。将其折半到20手是相对可行的:首先制定“玩家X可以达到结果Y”的假设,并使玩家X在每个棋局状态只给出一个或者几个候选点,而对手则竭尽全力采用各种策略去应对。利用这种方法,玩家X的策略集相对来说要小的多,因此可以大大缩减搜索空间。据此我们可以得出以下几个重要结论:

  (1)狼可以在30手内吃到一只羊(但是不会更早)。

  (2)狼可以在40手内吃到两只羊(但是不会更早)。

  (3)在最可信的两手棋落子之后,羊方总是有平局策略。

  其中第3条结论用了计算机几个月的时间。尽管如此,到现在我们还并不能确定羊方有没有获胜(或者狼方有没有平局)的策略。而上述的方法在证明狼方有没有平局的时候并不是很奏效:如同我们之前所说,狼方是一个“战术家”:在不依靠搜索的前提下,我们没有什么好的方法去判断狼方应该如何去行棋(羊方不同:一些明显会被吃掉并导向不利的落子可以被自然而然的排除,和狼方比起容易判断落子的好坏)。这使得对于狼方平局的问题必须提供出新的方法。

  我们可以定义一个“中间状态”:在羊方落下了10个羊棋子之后,也就是第19手之后,狼方再进行移动。这样搜索就变成了两部分:一部分是从中间状态到第39手(羊方放满所有羊棋子),这个搜索最多只有20手。另一部分的搜索是从初始状态到中间状态的搜索。

  这个方法存在一个问题:中间状态的数量非常庞大。狼可以吃羊,因此中间状态不仅仅是羊方有10只羊棋子的状态,还有可能是6,7,8,9只。而中间状态集是这些状态的并集。其中仅仅10只羊的状态就超过了5.5亿;而如果考虑整个中间状态集,总状态数大概是之前我们计算的S5状态的25倍。

  克服这个问题可以采取两种思路:其一我们不需要知道所有的中间状态:我们需要记录的是狼方能够获胜/平局的中间状态,而其余的不必考虑。其二是动态生成中间状态集:只有我们遇到某一个中间状态,我们才对其进行考虑。5个月的程序调试和优化得到了结果。下表给出了中间状态集的统计信息:

  根据上表,比较胜/平局和败局的数量,我们可以相信,狼方和羊方一样,总是具有平局策略。因此羊狼游戏的最优解是平局。当然,事实上这是计算机运行的结果,如果是人类玩这个棋类,胜负还是有着非常多的可能。而且羊狼棋在很多地区都有着各种变形,规则相同,棋盘不同的游戏也有很多,这对游戏变化也提供了许多新的可能。
热门信息 更多>>
相关推荐 更多>>
推荐货源 更多>>
福利活动 更多>>
微商资讯 更多>>
最新发布
网友问答
微商怎么做宣传 商落新闻 微商最新新闻 微商新闻源 什么是微商 微商加盟商 微商论坛 微商官方网站 怎么申请微商 微商怎么 微商加盟店 关于微商的新闻 微店新闻 微商的 微商报道 关于微商新闻 微商新闻事件 微商是怎么运营的 微商天涯论坛 微商概念股 微商代理怎么申请 新闻联播微商 微商联盟怎么样 苏宁云商新闻 微商是怎么 什么是微商营销 什么是微商怎么解释 什么是微商联盟 央视新闻微商 微商央视报道视频
用户须知|市场合作|免责声明|版权声明|隐私保护|服务协议|内容发布须知!|关于我们|帮助中心| 联系客服
千万群为您提供: 微信群大全棋牌群金花群斗牛群个人微信微信公众号微商货源行业软件微商学院红包网赚, 等信息
Copyrights(c) 2015-2018 qianwanqun.com All Rights Reserved 沪ICP备14023674号
确 定