我正在尝试创建一个程序,可以找到使用NN赢得游戏的最佳解决方案,我希望能从这里的精彩社区获得一些帮助。
游戏是战略战争游戏,你有你的士兵和你需要征服的土地。还有对手的士兵需要注意他们, 每一秒你拥有一块土地就可以得到一定的分数。
你有很多输入,发动机作家创造了你可以访问的例子:地图上的所有地方,其他对手士兵现在在哪里,如果土地已经被征服或在征服中间
我已经将ANN整合到游戏引擎中,并将健身设置为他收集的点数,但健身状态保持不变+ 1,左 我认为问题在于捕捉你需要留在它旁边的土地几秒钟,我无法让他学习如何做到这一点健身停留在1
我已经尝试了很多人和很多代人,但它没有征服,我也不知道该怎么做。
抱歉我的英语不好。答案 0 :(得分:0)
由于我无法评论,我只会回答一些假设。 (我也开始尝试在Python中使用NN和GA(MultiNEAT),所以也不是专家;))
问题可能是对遗传算法的反馈不佳,因此无法选择最佳个体。尝试让你的健身得分更精细,例如,让每个向敌方士兵的小动作增加一点健身,而不是仅根据最终得分进行评分。
您的网络输出是什么?也许网络的结果没有正确地传递给游戏。例如,我会制作针对士兵运动的输出神经元,也可能是一些接近时的反应(我不太了解游戏的机制)。如果你从网络上得到的答案数量有限,那么这些答案可能还不足以赢得比赛,所以没有一个网络可以真正得分。
你在等待足够长的时间吗?问题越大,找到答案所需的时间就越多,特别是在慢速计算机中。如果速度证明是一个问题,请尝试使用GPU实现遗传算法以加快网络评估。