创建博客 登录  
 关注
   显示下一条  |  关闭

XPeng’s Dreams

庄生晓梦迷蝴蝶

 
 
 

日志

 
 

【CH世界大事记-1】  

2007-11-26 15:50:18|  分类: 智慧世界 - Intel |  标签: |字号 订阅


系统开始时的状态

 
10分钟后系统的状态

         星期六开始运行这个简单设置的环境,模拟个体所能获得的输入包括周围个体数目、自己的当前速度、角度、HP以及最近目标的相对位置,离目标越近HP减少得越慢,存活时间越长者适应度越高。系统中人口数为100,个体和基因一一对应。
        
刚开始的情况是完全随机,模拟个体的大脑完全由各种随机的、最小结构的神经网络支持。

         上面的图是运行大概十分中后的截屏。左边的图中可以看到多于一半的个体开始有向目标移动的趋势,个体速度也由最初的随机值(基本上是很小的速度)趋向于较大值。从场景的分析可以得出,这是向全局最优解靠近的正确方向。

         再运行一段时间后(>1000秒),右边的图中可以看到部分优势个体除了向目标靠近外,到达目标后产生了“刹车”的趋势,以达到徘徊于目标附近的目的。这个结果就该场景而言已经很接近最优解了。

 

         这次试验发觉,对基本的NN(神经网络)进化而言,程序员仍然有一个工作要做,那就是得依据环境和个体的情况分析出NN的输入和输出,包括其个数和意义!可以联想到游戏中策划的这个工作也正是巨大的,如果设计一个NPC,得事先“规定”好它们的有效行为有哪些,它们的有效输出是什么。策划必须以专业知识指出哪些输入、输出是有用的,而且限于分析和程序承受量,还得尽量以最少的输入输出进行设计,即有效的“Feature Select”。对NN而言,输入和输出的个数增加特别是多余的输入和输出(比如现在我试验中的“周围个体数目”对完成任务的NN来说就是一多余输入),对NN的进化和执行性能均带来巨大负担!因此,FeatureSelect的工作就更加重要和繁重了。
        我尝试在系统中对NN的输入和输出不加以严格定义,将目前我能提供的所有信息全部作为NN的输入(达21个之多),目标位置检测采用在个体360度范围内均匀放置物体传感器(sensor)。类似于昆虫的复眼,每个传感器对相应方向上范围中的物体进行探测。

        根据遗传神经网络算法的特征,可以将“对输入的选择”本身也进行进化,从而找到合理的最小输入集!

 

        接下来的几天,我将对目标的位置进行随机的变换,看这些个体能否进一步学会追踪不同位置的目标;接着可能给个体增加一个“eat”的行为对应NN的一个新的输出,然后看试验结果。

  评论这张
转发至微博
转发至微博
0   分享到:        
阅读(524)| 评论(6)| 引用 (0) |举报

历史上的今天

相关文章

最近读者

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--相关文章--> <#--历史上的今天--> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2012