听到林鸿开始介绍他的算法,大家顿时打起十二分精神,认真地听着。
林鸿继续说道:“实际上。我所使用的这种算法。可以称之位反统计的算法,专门针对对方的攻击进行统计。也就是说,将自己的中弹信息统计下来,这样就可以形成一波又一波的中弹概率不相同的区域,在中弹次数达到一定条件之后,坦克就可以有效地针对中弹的概率,进行相应的运动”
林鸿一边解说,一边开始在电脑上操作起来,他在重新改写一些代码,加入一些辅助的东西,以便能够让大家更容易理解。
大家听到他的话,这才明白,为什么刚开始的时候,己方坦克会持续中弹,并且消耗掉将近一半的血量。原来这是算法需要,正在利用中弹来获得对方的炮弹参数。
这种情况,就好像是两人比武,其中一个为了熟悉对方的套路,就不断地挨打,等熟悉了套路之后,在下半场便可以有效地针对这些套路进行相应的躲避,这样,就实现了绝地大反击。
道理其实很浅显、很简单,仔细想的话大家似乎都能想到,毕竟这种例子实在是太多了,可是真正想要灵活运用,就不是这么简单了,要不然也不会这么久从来没有人想过这个问题。
吴东和唐华鑫两人都若有思索地点点头,他们发现,生活中的很多规律,稍微变通一下,实际上就能应用到robotank中来,从而达到意想不到的效果。
小规律大效果,这种从生活中得到灵感启发的乐趣,实在是太美妙了。
这件事情给大家的启发都非常的大,他们发现似乎一扇新的大门像他们打开了,算法似乎并不是什么高深的东西,道理其实大家都知道,关键是怎么灵活地运用。
林鸿一边说着,一边将代码改进了一下,加入了一些视觉效果。
“你们看”他说道。
然后重新运行了两个实例,一红一蓝两辆坦克出现在竞技场上,红色坦克不断地随机游走,像蓝色坦克发出炮弹,而炮弹地周围,则不断发出一种蓝色的半透明图层,犹如一种波动,以红色坦克为中心向四周扩散。
“当敌人发射炮弹的时候,可以假设对方发出了一个冲击波,击中自己的概率越大,则冲击波的颜色就越深,反之则颜色越浅。而我们要做的,就是在颜色深度不同的冲击波上作冲浪运动,方向吗,自然是朝着颜色浅的地方前进。”
说道这里,林鸿停顿了一下,以便对方容易理解他的话。
“我们不断地朝着颜色