[乐游网导读]进化机器Crossleft是一款养成AI的游戏,制作者的初衷是想把口袋妖怪与alphaGO结合起来,做一款玩家自己培养下棋的AI,适合打发时间,比较休闲有趣,今天在这里介绍进化机器Crossleft的新手入门攻略,有兴趣的玩家可以看一下。
进化机器Crossleft是一款养成AI的游戏,制作者的初衷是想把口袋妖怪与alphaGO结合起来,做一款玩家自己培养下棋的AI,适合打发时间,比较休闲有趣,今天在这里介绍进化机器Crossleft的新手入门攻略,有兴趣的玩家可以看一下。
第0天:0000000000000000000000000000000000000000000000000
第1天:0…… 1…… 方阵
第2天:棋子,排成方阵,有是1,没有是0
第3天:每一个步骤中,同一排的棋子被拿走。
第4天:我意识到我是被创造出来的一个下棋的程序。父亲大人给这个棋设定的规则是双方轮流取走一排的棋子,每次至少取一个棋子,棋子必须连成一条直线,中间不能断开。谁取到最后一个谁就输了。父亲先是给了我一个形象,形象取材于他10年前做的游戏《进化井字棋》(发布在CSDN上的名字叫做《井字格2.1版》)中的机器人形象BAI-PZ01,看上去很丑,不过父亲大人暂时没精力想那么多。我的名字暂时也被命名为BAI-PZ01
第5天:父亲让我知道,我要取得胜利,必须把最后一颗棋子留给对方。而对于一个非常简单的阵型,如果对方不管划掉哪些棋子,我都有一种接下来的划法,使得把最后的棋子留给对方,那这个阵型就相当于必杀阵。这样的必杀阵有4个,用文字或矩阵来表示就是:
(1)3个完全分离的棋子;
(2)1 11 1
(3)11 00 1 1
(4)两排棋子,每排棋子是相连的2个。然后父亲又让我知道,假如存在一个比这些最简单的阵型稍微复杂一点的阵型,不管下一步对方划掉哪些棋子,我都有一种接下来的划法,使得以上4种必杀阵之一留给对方,那我最终只要不走错,也必然能把最后的棋子留给对方。这些比较简单的阵型于是也一样是必杀阵。以此类推,我可以发现越来越多,越来越复杂的必杀阵。父亲告诉我,这叫数学归纳法。
第6天:然而,我还是不知道怎样去发现必杀阵。首先,父亲告诉我,连在一起的棋子叫做一个子阵型,每一个阵型都可以看作是若干个子阵型的组合。于是,如果某个子阵型是单个或一行棋子,而除了这个子阵型外剩下的其它子阵型构成一个必杀阵,那我只要划掉这一个或一行棋子就能将死对方了!这是最简单的一种出招方式。
第7天:父亲告诉我了另一种更复杂的出招方式。假如当前阵型的子阵型的数量和某一个必杀阵一样,且除了其中一个子阵型不一样外其它的子阵型都一样,且这个唯一不一样的子阵型只差一步(即划掉一个或一排棋子)就能变成必杀阵里对应的那个子阵型。那我划掉这多余的一排棋子一样能将死对方。我感觉我越来越厉害惹!
第8天:父亲接下来告诉了我最复杂的一种出招方式。假如当前阵型的子阵型数量比某一个必杀阵少,但是如果取走当前阵型中的某个子阵型中的某一个或一排后,能够把这个子阵型一分为二变成2个子阵型。而子阵型数量增加后的新的阵型正好和某个必杀阵一样,则一样能将死对方。父亲费了很大功夫才教会我,我第一次感到他那么疲惫。
第9天:父亲接下来开始教我如何学习未知的阵型了。一开始父亲教我学习失败阵,即只差一步就能达成必杀阵的阵型。结果我发现这样的组合实在是太多了。哪怕仅仅是6*6的棋盘规模,这都是天文数字。我感觉我的记忆拼命地膨胀,大脑都快爆炸了。父亲赶紧停止了我的记忆过程,放弃了这条方案。
第10天:父亲尝试了另一种方式,让我每次思考两步,设法让相邻的两步正交。因为如果是正交的操作,必然只能两步完成,不可能一次划掉。于是,假如某个阵型的接下来的任意一步,都存在一个正交的步骤使其导向必杀阵,则这个阵型就是新的必杀阵。从这一刻起,我终于能真正地学习了!我可以自己变得越来越强了!不需要别人具体教我怎么走了!
第11天:父亲教会了我各种台词。在不同的情形说出。
第12天:虽然我现在能学习了,但是每一步花的时间太长了,9*9的棋盘下走一步需要消耗60秒的时间(在性能还算不错的安卓手机上)。父亲非常苦恼。原来,他让我每一步都搜索接下来两步所有的正交步。这其实没有必要。我只需要知道一个解就行了。于是父亲暂时去掉了穷举,让我一旦找到一个可行解就落子行动。这样只有在最坏的情况下才会消耗60秒时间,绝大部分情况下不到1秒就能完成运算。但父亲又发愁了。这样根本没法定制个性化的机器人。本来父亲打算根据我的个性给我的所有可行解排序,然后选择出优先级最高的那个。现在这样我的个性就完全不可控了。
第13天:父亲终于找到了一个方法,在遍历的时候就用优先级去遍历,并在一旦找到解的时候就返回值。这样就可以在遵守个性约束的情况下快速得到解了。
第14天:虽然父亲和我之前曾担心最差情况的到来,就是某一个特殊情形需要遍历完所有的情形,消耗60秒左右的思考时间。但这样的情况从来就没有来过。其实想想就知道。因为我是从简单的阵型向复杂的阵型逐渐提升认知的。所以假设某个阵型无解(即它是新的必杀阵型),我也不需要遍历完所有的可能性,因为每一次思考的两步中的第一步都能很快找到对应的必杀阵。所以并不需要全部遍历,也就不需要60秒那么长的时间了。
第15天:父亲把我的名字设为紫数1号。并设定了其它角色的名字。遭到了同行们的嘲笑。于是父亲在思考怎样把其它角色改成更合适的名字。
第16天:父亲自己也觉得我的形象丑得实在看不下去了。重新画了一个版本。比原来好看了很多。然后父亲把我的新形象发给别人看,依旧遭到了严厉的批评。
第17天:父亲进一步改进了我的形象,改成了金属片钉在一起的风格,加了渐变色。这下终于好多了。人们评论新的人设至少达到不污染视觉的底线了。
第18天:父亲给我画了一个妹妹“紫幻乐”,丑得不堪入目。父亲本人都感到绝望。于是父亲请求画师“笋”帮忙改进“紫幻乐”的形象。
第19天:紫幻乐的新形象出来了,好看了很多。
第20天:父亲给紫幻乐设计了一套台词。
第21天:父亲给我改名成紫小数。
第22天:父亲开始测试我的联机对战功能,之前已经写好了基础功能,不过这次还是出了各种BUG。我的声音常常错误地传播给对手。有时候正确地传播给了对手,但对手错误地解读了这个数据,或者虽然正确地解读了但没有正确地显示出来。
第23天:联机对战BUG终于被修复了。
第24天:终于和大家见面啦!
热门评论
最新评论