靳雪雯嘻嘻一笑:“一共8万多,险些花光我的压岁钱。”
小鱼儿:“……”
意思是还没花光呗?
这天开始,靳雪雯每天都来苏家。
大家聚在一起玩玩闹闹、其乐融融,顺便训练、训练机器人,不亦乐乎?
江寒让靳雪雯又买了五台机器人,和方源每人选择五台,分头训练。
两人的程序很快都编好了。
由于方源采用了传统算法,程序调试完成后,直接烧录到机器人的中,就可以运行了。
而江寒这边的“强化学习”,实现起来就没那么简单了。
程序本身就很不好弄,训练起来更加麻烦,需要相当多的时间。
“强化学习”在这个世界早就出现了,其中最重要的概念,就是智能体gen。
在这个案例中,一台战车机器人,就是一个智能体。
训练的过程中,智能体可以得到所处环境的状态信息,并采取试探行动。
当环境对某个动作给与了正向反馈时,智能体将来就会更加倾向于这种举动。
反之,如果得到的是负面反馈,那么就减弱这种倾向。
这样,智能体就能在不断地试错中,一点一点地优化行动策略……
例如著名的learning算法,江寒之前就有过一些研究。
在learning中,用一个表格来保存状态和动作的值,称为able。
通过修改able的值,就能生成一个指引智能体行动的“纲领”。
然而,这种办法虽然简单、直观,易于实现,但也有着致命的缺陷,那就是只适合状态和动作空间是离散的,而且维数不太高的情况。
当状态和动作空间是连续的,或者维度很高时,再用able来表达,就有点力不从心了。
为了解决这个问题,江寒很自然地想到了算法。
所谓,全称是eeperk,实际上就是将深度学习和强化学习结合到一起的产物。
的原理相当简单,只要将able换成人工神经网络就行,但如果想取得理想的效果,那就得讲究一点细节了。
首先要克服的,就是噪声、延迟和不稳定等问题……
江寒在虚拟空间里,用了三百多个小时,才终于弄出了一个完善的算法。
接下来,就是漫长的训练过程。
好在这种算法最大的优点,就是不怎么需要人工干预。
只要给“智能体”适当的环境,它就能自主学习、慢慢进步。
苏婉莹特地将阁楼清理出来,给大家做训练场地。
江寒让方源的五台机器人,给自己麾下的战车做陪练。
一开始,江寒的机器人有些笨头笨脑的,和无头苍蝇差不多。
别说作战了,连路都跑不明白,经常卡在莫名其妙的地方转圈圈。
看到这种情况,大家不免心里有些没底。
靳雪雯藏不住事儿:“江寒哥哥,这种办法真的行吗?”
苏婉莹直接吐槽:“江寒,你这几台战车,看起来不怎么聪明呀?”
夏雨菲也有点担忧,问江寒:“它们好像一直在乱转,这都半个下午了,是不是哪里出问题了?”
江寒淡淡一笑:“现在下结论还太早了点,过两天再看效果吧。”
这些战车机器人性能还算不错,但续航就比较马虎了,连续运作三个小时,已经是极限。
为了解决这个问题,江寒设计了一个磁吸式充电接口,让这些机器人电量消耗得差不多时,自己滚去充电。
这样,他就可以腾出手去,继续改进算法了。
三天后,江寒的五台战车机器人,终于看到了训练效果。
从一开始什么也不懂,慢慢学会了走路、射击、躲闪……
这样一来,再与方源的队伍时,终于不再一面倒的被屠杀了。
虽然处于下风的时候多,占据优势的时候少,取得胜利的次数,更是约等于0……
但总归是好现象。
苏婉莹、夏雨菲等人啧啧称奇,她们之前的确没想到,这些“死”的机械,居然也能在实战中成长!
又过了两天,江寒的这五台机器人,渐渐学会了战术配合。
这样一来,再和方源,就胜多败少了。
又过了一天,方源的机器人,就彻底不是对手了。
这就是没有成长性的的局限性所在,写成什么样,就是什么样。
而拥有“强化学习”能力的,只要有充足的训练时间,就可以愈来愈强!
这天,江寒和方源又进行了一场友谊赛。
开战不到3分钟,江寒这边就摧枯拉朽,打败了方源的队伍。
“不玩了,不玩了。”方源大摇其头,“你的机器人进步太快了,我估计……等到下周比赛时,差不多能和遥控操作一较高下了。”
江寒摇了摇头:“只怕不行。”
“你是说时间吗?”方源问。
江寒笑了笑:“不,我这个算法的上限,取决于陪练的强度,现在这种情况,只怕后面很难有大的进步了。”
方源思索了一下,然后说:“这样的强度,差不多够了吧?”
江寒摇头:“目前还不知道其他队伍的情况,拿冠军的把握……不能说没有,但,还不够大。”
方源叹了口气:“可惜我能力有限,弄不出战斗力更强的……”
江寒心中一动,忽然想到了一个办法。
那就是在方源的几台机器人里,也写入训练好的网络,然后,让两个网络对战!
这样一来,这些已经达到瓶颈,很难取得进步的机器人,就可以在对抗中,一起成长了。
然后,你成长一点,我成长一点……
江寒越想越觉得可行。