百科问答小站 logo
百科问答小站 font logo



GitHub 上有些什么好玩的项目? 第1页

  

user avatar   liang-zi-wei-48 网友的相关建议: 
      

神经网络遗传算法,玩转Flappy Bird,很简单的。

这个GitHub项目里,所有代码都是用HTML 5写的。

神经网络的部分,用了突触神经网络(Synaptic Neural Network)库。

首先,创建一个拥有10只小鸟的种群,它们要在游戏的过程中繁衍和进化。

这10只小鸟,都是靠随机的神经网络,决定下一步扇不扇翅膀。神经网络有三层:

输入层:两个神经元
隐藏层:六个神经元
输出层:一个神经元

每输入一个小鸟的当前的位置,就会经过三层网络,输出一个0到1之间的值:大于0.5就扇翅膀,不大于就不删。

游戏过程中,需要观察每只小鸟的资质,用到的是适应度函数 (fitness function) 。适者生存嘛。

当整个种群都死了之后,四只成绩最好的小鸟获得奖励,并繁育10只后代。

这里的“自然法则” (即运算) 有三种:

一是选择 (Selection) ;
二是杂交 (Crossover) ;
三是变异 (Mutation) 。

规则是:

· 前两名,杂交生出一个后代
· 4只中随机选两只,杂交生出三个后代
· 4只中随机选两只,分别直接复制,生成两个 (和上代一样的) 后代
· 给每个后代施加一些变异

让只只后代继续游戏。就这样,一代一代生生不息。

一开始,全体见光死。

第11代,娴熟多了。

第23代,更加精湛。

这样生动的养成游戏,你也去玩玩吧。

传送门

官网:

GitHub项目页:




  

相关话题

  为什么 Dropbox 等大型服务使用 Python 作为主要语言,即使它的效率比其他编译型语言低几个数量级? 
  如何看待今日头条一口气签了 300 多个知乎大 V 的传闻? 
  中纪委评「阿里女员工被侵害」:铲除潜规则滋长的土壤,释放了哪些信号? 
  Git 为什么成为主流源代码管理选择? 
  油管频道的千次观看收入多少算高? 
  如何看待 Python 之父关于帮助中国程序员应对 996 工作制的讨论? 
  医生有医德,老师有师德,码农是不是该有码德? 
  如何看待 2019 年 11 月 26 日 IPV4 地址耗尽?会产生什么样的影响? 
  为什么这么多人转行做外卖骑手,是原本行业不好做还是骑手赚得多? 
  如何看待知乎上市首日开盘破发暴跌24%? 

前一个讨论
如何看待 Ray Dalio 的新书《Big Debt Crises》?
下一个讨论
同样对蒙古各部实行打压为何金与满清结局完全不同?





© 2025-05-27 - tinynew.org. All Rights Reserved.
© 2025-05-27 - tinynew.org. 保留所有权利