You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1246 lines
133 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

### 这里存放一些杂乱的思路以及发在Frog项目下的评论备份。不成体系但是丢掉又可惜。主要是自已做个备份大家可以不用看。
=======以下是杂七八拉的一些想法,想到什么就记下来==========
* 判断Frog胜出可以不用能量而用吃了多少个食物来判断一个测试周期吃的多的胜出用能量多少是不公平的因为吃的多的有可能因为脑细胞或器官多消耗的能量也多最后剩下的能量反而不如那些不运动或死掉的Frog。
* 将来训练者和生物体可以对话表现形式为弹出一个24x24点阵图形每次只能弹出一种图形。训练者由人或电脑操纵生物体则可以任意自主行动和说话(输出任意图形),训练者和生物体具有相似权限的输出(开始阶段输出图形仅限于100个汉字和数字),行动仅限于说话、移动、打击、保存食物、拿出食物。
* 训练者在生物体模拟正确或行为(输出文字或图形,行走,吃,睡等)正确后,给予食物奖励。训练者在生物体说话或行为错误时,不给予奖励或给予打击惩罚。
* 人类大脑的工作机制必然是简单的它不可能拥有象现代CPU那样精密的构造一个三极管损坏将整个停摆。由一个受精卵发育成的人脑上百亿个脑细胞的形成必然遵迿一些简单的规律。
* 人类大脑的工作机制必然与规模有关,否则无活解释为何人的脑细胞为何需这么多、从不退化。(生物体活动多的细胞会影响到DNA遗传表现为用进废退并不全是100%随机的。)
* 以上简单性和规模两点决定了基因的设计体现在程序中就是Frog可以下蛋蛋就是Frog的脑结构的精简版可以存盘。蛋可以用来孵化出下一代的Frog。
* 生物体具有天生痛觉区(一种固有的神经元兴奋区,此区兴奋将导致神经元群的工作集中于将短期内形成的神经元联系与负反愧兴奋区发生强烈关联,这就是痛觉的本质)和天生愉悦区(一种固有的神经元兴奋区,此区兴奋将导致短期内形成的神经元联系获得加强)。
* 生物体具有思考区,思考区与视觉区(和将来要加入的听觉区)联系紧密,思考区可以将视觉或内部细胞区的兴奋联系起来,思考区内容是暂时的,很快由新的内容代替,思考区既属于输入区,也输于输出区,思考区的所有内容将自动被大脑的某个空闲区存贮一段时间。
* 思考区内容由天生驱动区(痛觉、愉悦区)及后天形成的驱动区驱动,工作于串行方式,相当于人类的“心无二用”现象。大脑神经网络的检索和保存机制是并行的,可以从上亿个神经元中快速并保存与当前思考区相关联的内容,但是思考区的本身的活动却是串行的。
* 思考区检索关联信息时,最近活跃过的细胞存储区优先兴奋(被检索出),既使在做梦中也是这样。
* 模拟生物体的输出细胞区有说话区(24x24点阵网格)、上下左右行走区、张嘴及吞咽区、攻击区,移动视觉聚焦区,保存物体区。
* 条件反射的建立是重点,任意两个兴奋区兴奋,都会导致位于它们中间的一个空白兴奋区形成与这两个区的联系,时间影响条件反射的建立。短期内形成的神经元联系快速消退,反复发生的神经元联系被加强。条件反射形成后,如没有复习,则随时间流逝而减弱直至消失。
* 具有一种天生的(生物体的DNA遗传信息带来的)但比较弱的本能,能够重复训练者的行动和文字输入,如果训练者从左到右写一横,它也能本能模仿写一横,输入和输出区的每个象素点对应它的一组输入和输出天生神经元兴备群。
* 有一种机制保证永远至少有一个驱动型兴奋区占优(用于驱动思考区),如果什么也没发生,“闲得无聊,要找点事干”区或做梦区兴奋。
* 有可能做梦,做梦过程的目的:
1. 节省能量,让大脑的思考区维持单线程低功耗工作(但不至于死机,可以接收各种输入信号并醒过来),生物脑是没有重启键的。
2. 给大脑一段空闲时间进行整理工作,将最近发生的事件拿出来在思考区复习一遍,并进行推演,试图与旧的存贮内容内容发生关联,以形成新的条件反射。(创造力思维的产生,来源于不相干的细胞区被联系起来。) 这个过程实际上白天也在发生,只是白天的目的性太强,不象做梦这么自由。
3. 旧的存贮内容在推演过程中得到强化,不至于被遗忘,始终得不到推演机会的存贮内容将随时间流逝被彻底遗忘(丢失)。始终得不到推演机会的存贮内容一定是无用的内容。
* 先定一个基础的开发目标100x100的点阵在上面随机点一个点人工生命也必须模仿在相似的位置点一个点并具备遗传功能不能做到这一点的人工生命都被自然淘汰模仿最快、最精确的人工生命生存机率最高。
第二步开发目标: 在点阵上从左到右顺序写一横,不能模仿的人工生命全部淘汰。
第三步开发目标: 在点阵上写1、2、3....,不能模仿的人工生命全部淘汰。
=======以下是码云上评论的备份,抄在下面,防止万一码云挂掉以前的评论丢失==========
920504_drinkjava2
drinkjava2owner2 days ago
正在苦恼光子会产生太多的空洞Hole即很长时间无信号输入的突触信息可以安全地遗忘掉和洞之间不活跃的关联(Relation),如果要清理也要花不少时间,即影响效率,也占用太多内存, 突然想到可以利用动物的睡眠,如果允许这个青蛙睡眠,则可以利用这个睡眠时间去清除细胞中的多余空洞和关联,回收内存,防止无限占用内存,并提高青蛙在醒来后的信号处理速度。 也就是说将不重要但是要占用大量CPU时间的内存垃圾回收工作放在睡眠时做。
Copy link
quanpeifeng
quanpeifeng3 days ago
加油!会一直关注
Copy link
920504_drinkjava2
drinkjava2owner3 days ago
谢谢!
这个逆向成像一调试出来就乐坏了马上更新上来结果悲剧了有个大乌龙我以为的能识别变形后的字母实际上只是因为没有其它字母信号干拢而已正在紧张编程中解决这个bug希望能够亡羊补牢。基本思路是将细胞上极短期内发生的两个洞绑定只有绑定的洞方向来了光子(或角度略偏,代表字母的变形)才激活另一个方向的洞发送光子而不是激活所有洞的光子。例如训练A字母和A声音同时训练B字母和B声音同时训练A的洞不会被绑到B的洞上也就是说训练是否在短时间同步发生非常关键。
另外说一下最近为什么手工建模的多,而不是走由细胞自动进化这个路。这是因为有些功能如模式识别注定了绕不开,与其让细胞去试错,不如先手工去实现一下模型,验证它的原理,如果原理大体对了,再接着让青蛙走随机参数变异、进化、淘汰的路子。至于用洞来代表突触,这个与生物神经细胞似乎偏离太远,这个是我的一个假设,只能碰运气假定它是对的,用实验来验证。生物并不总是能进化出完美的结构,也许说不定洞才是更合理的信息模型也说不定。就好象生物从来不能进化出轮子,虽然有了轮子会跑得又省力又快,但是轮子对于生物来说是没法进化出来的,因为没办法给轮子供给营养让它长大。
Copy link
bajdcc
bajdcc5 days ago
作者很有想法,找食程序让我想起了一本书《游戏编程中的人工智能技术》,里面就是讲神经网络和遗传算法的,且收敛速度还是很快的,不过是高度简化的大脑,自由度不高。
2d大脑的demo很不错我想可以自己用c++实现然后放在自己的游戏框架里程序粗略试了下感觉收敛速度不是很快这样设计大脑的话效果就与大脑的器官的放置有着很大的关系由于变异是输入点或输出点的随机偏移不知道是否这样那么从happy变异到pain的可能性比happy到left的可能性更大大脑中感官区域的安排也是进化的结果更如为什么要分左右脑有胼胝体总之结果很大程度受2d大脑中器官的放置情况影响大脑中感官的位置和大小也可以变化。
3d大脑很有意思两次刺激同时输入交点区域信号加强那么输入的先后顺序是否会影响大脑的形成我觉得可以增加一个退化机制随着时间的流逝连结会退化这样就体现了先后顺序。
其实怎么设计输入输出的方法并不是主要的重要的是1怎样提高收敛速度2怎样避开局部最小值找全局最优解这也许是真正的生命智慧的体现我对cnn rnn等不是很了解但是觉得作者这样的设计还是大概率会被引向现有的神经网络理论当中或者说是指如何优化的方法因为模型都是大体一致的模型怎么样也暗示了这个程序能走多远frog能有多聪明
最后,作者加油~
Copy link
920504_drinkjava2
drinkjava2owner5 days ago
谢谢你的鼓励。2D脑的演示意义大于实用它主要是想证明非生命和生命本质上是相同的只是一种自然现象它在功能上还是有局限。
收敛就意识着结束,人工生命的目的不是要获得一个静态的系统,而是要一个动态的,随时根据外界环境变化而变化的脑系统。这个项目用到的遗传算法最终目的是想要达到一个能不断自进化的脑结构。什么局部最小值、最优解的我不懂,只是希望将来更多地引入随机变异机制,生成越来越复杂的脑系统,能在生存竟争中生存的时间越来越长。这个项目要解决的问题和主流的神经网络是相同的,只不过是从一个外行的角度来描述,用可视化的结构来实现通常用算法表示的相同逻辑,这已经是我的数学理解能力的极限了。而且出发点和主流的“让神经网络有用”不一样,这个项目的出发点不是要有用,而是站在青蛙的角度,要让它"活得长,活得好",以模拟生命进化。
退化机制是要有的,而且很容易实现,所有的坑的大小随时间(即主循环)而变小,这个很快会加上。
Copy link
920504_drinkjava2
drinkjava2owner4 days ago
收敛速度这个指标个人感觉意义与系统的智能程度无关,如果从结构上来说,大自然进化出(收敛到)人脑这种结构,花了上亿年时间。如果从权重调整上来说,人从生下来到能够独立处理复杂的问题,需要经过漫长的学习期。但你不能否认人脑的价值。
相反,越是收敛快的,反而智能程度越低,比如小蛇和小鸡,它们生下来就会找食,基本不需要再进行权重收敛训练了,但智力程度却很低,没有多少学习新事物的潜力。
Copy link
920504_drinkjava2
drinkjava2owner10 days ago
非常感谢chanvictoire捐款
Copy link
zhoujin
zhoujin13 days ago
模型的设计有点小见解,希望对你的设计思路有一定帮助。
你的设计模型是基于食物为本源的。我认为食物摄取的过程是你前面提到过是能量的摄取过程而能量摄取以后会对摄入的能量分配多少用于保存多少用于输出。而能量过于单一或者说食物的本质太过单一导致模型的升级过程变为不可能所以这里应该对食物进行一定的设定比如frog需要的不是食物而是食物中的某一种元素食物中元素的数量对食物摄取过程记忆对食物种类进行一定筛选这是一个物种升级过程必须的也是唯一的。可以先做一种食物让frog对这种食物有认识告诉他需要这种食物的原因比如某一种元素能量例如si。当然后食物中还含有其它化学元素希望都加入到食物模型中。这样会对模型的升级有一定的帮助。如果可以希望同意其他人也参与到代码的开发过程。
Copy link
920504_drinkjava2
drinkjava2owner13 days ago
谢谢你的意见,但理解不同。我解释一下,实际上食物代表了环境的熵,包括边界、障碍等,都是熵的体现,如果投入这个虚拟世界的熵是混乱的,则青蛙不可能从混乱的熵中存活下来,所以这个虚拟世界本身也必须是有稳定的内在规律存在才行,比如如果吃到食物,青蛙的能量总是增加而不是减少,这就是一个隐含的熵的规律。这个虚拟世界所有的规律都是人为设计的,而且即使非常简单的规律,因为三体效应,要求这个青蛙脑进化到非常复杂的程度才能适应这个环境(例如围棋的熵很少,但复杂度会随着棋盘大小急剧增加,也就是说要求脑的熵容量急剧进化),所以重点不在于将环境设计得多复杂、多逼真,而在于让脑的熵容量要能达到适应环境的熵。这个适应就体现在生存上,这也是一个人为设计的熵的规律。所以目前的重点还不是复杂化这个世界,而是让它先从简单的环境开始适应,目前看来这个目标还没有完成,所以不能引入更复杂的熵输入(细化食物)。
比方说,要让它看到小蛇就躲开,这个说起来简单,但要求它能够看到小蛇的形状,将小蛇形状的熵转化为脑内的细胞区活跃,这就是要求它具有模式识别能力,从熵的角度看就是小蛇和生存是相关的,这个规律通过脑细胞的分布是可以被青蛙抽取出来的(见果冻算法的比喻)。目前我正在做这个工作如果运行run3d.bat可以看到两个相关事件的波字母、声波)的传播,我要把这两个波关联起来,一个波激活后,会在另一个波的波源处逆向成像。这个算法有可能通过原子级别模拟的熵的传播自动进化出来,但这里我越俎代庖,手工设计算法来试图加快这个现象的出现。
另外,欢迎其它人参与到代码开发,我一直希望有人能贡献代码,但前提是,这个人的编码速度要比我快,否则就没意义了,(我每天要上班,实际上编码很慢,但到目前为止,还没发现有人提交任何代码)。目前我的编程目标是1.完成字母的模式识别 2完成扭曲、变形的字母的识别 3.加入小蛇进来增加程序的趣味性。第1项是重点如果有谁真的在编码遇到问题可以直接提问我也很希望有人参与进来。
Copy link
zhoujin
zhoujin12 days ago
环境熵是无穷大的,而环境的组成是有定量的。 小动物应该吃什么?不应该吃什么?这些不是设定的,而是让他自己去算去适应的,即便吃掉了同类,也不是不可以的,如果是能量转化过程需要了,那么吃同类也是进化的过程,是必要的,但这一切不应该参与人的设定或其它的固有因素。
比如小动物见到什么应该躲开,遇见什么应该保持静止不动?这一切如果是你设定完成的,那么这些代码都是人工,而非智能。
所以说,模型的设计如果修改了。就会产生不同的结果,如果单单是因为硬件设备的性能而局限了你的模型,那么结果就是人工设计,而非智能。离硅基就相背了。
Copy link
920504_drinkjava2
drinkjava2owner12 days ago
熵这个概念有点虚,就好象说生命是一种现象一样,正确,但好象什么也没说。但是,越是简单的原则越不能违背,如果违反了这个规则,则可能犯大错,熵守恒这个原则是非常重要的。在程序设计中始终保持熵守恒,可能会产生想要的现象(设定初始条件,等待想要的结果),也可能产生其它意外的现象。但是如果不遵守熵守恒原则,则这个系统一定是错的,具体到脑设计就是所有的外界信号,在脑内部不会随便湮灭。青蛙脑不排除人工设计,只要不违背熵守恒原则就是允许的。
Copy link
宅男31号
宅男31号18 days ago
这个想法很不错,之前我也产生过这样的想法。但我觉得这种方法很危险,因为这样产生的意识,可能会有伤害人类的欲望。我觉得人工智能还是应该以服务人类为宗旨,必须保证人类的安全。
Copy link
920504_drinkjava2
drinkjava2owner18 days ago
我是投降派,如果会有伤害人类的动机,那就把这个动机消灭在萌芽状态,所以从一开始就要制订人工智能保护法,确保人工智能的合法权益。不能等到人工智能上了战场、人工智能被组装到汽车、导航机器里,才发现—喔,原来它也会反抗的啊—就太迟了。理论上每个机器人都是永生的,人类没理由剥夺他们的生存权和自由权。
不过话说回来人工智能伦理、立法这块还是谁的技术强谁就有话语权talk is easy。为了避免美国首先开发出独立自主的战场机器人国内也要加快人工智能技术上的研发用实力来争取人工智能立法的发言权。
Copy link
920504_drinkjava2
drinkjava2owner19 days ago
可以把具备动态触突的神经元比作一个果冻,光子来了,在上面撞了一个坑(动态触突)就被陷进去了(能量存储),如果来的多,或者速度快(能量大),一小部分的光子就被从果冻的另一头撞出去了(光直线传播,寻找下一个神经元,增加信息存储单元,实现体全息存贮)。如果在另一个角度又来了新的光子,同样的过程在发生,只不过在撞击的过程中,以前陷在其它坑里的光子有可能被撞出来,沿着撞击坑的路径直线逆向返回(即波的逆向成像,两个撞击事件,在神经元级别就被关联起来,关联的相关度取决于它们撞击坑的大小),原来的光子陷入的越多,则被撞出来的机率就越大(短期发生的事最先被回忆出来),随时间流逝,光子被果冻吸收(果冻变肥,有可能遗传),被撞出来的机率就越小(信息的遗忘),撞击坑也会自动修复(动态触突消失,脑神经又可以接收新的信息了)。如果反复地有光子撞击在同一个坑,这个坑就会变大,这个修复的过程会变得很慢,坑变大了后果就是,即使只有轻微的撞击,也可以很容易将大坑里的光子撞出来(即记忆曲线,复习的效果优于单次长时间学习)。 在某些位置,撞击太频繁、太强烈,不是在果冻上撞出坑,而是撞出一条通路,光子可以无损耗地通过,就形成了一个个传导通道(神经纤维),直到光子被某个果冻拦截为止。
思考和意识,其实就是一场撞球游戏而已。
Copy link
陈凯文
陈凯文23 days ago
从“量子计算机”找到“图灵机”到"生命游戏"再跳你的项目
我是个外行人,不懂代码,当看到你的青蛙能够智能的走跷跷板。
很是震撼!你的研究和探索很有意义!
加油啊~
Copy link
920504_drinkjava2
drinkjava2owner23 days ago
非常感谢你的捐款和鼓励!惭愧最近有点忙,进度慢,有时候写的多一点,有时候思路中断了,一天都打不了几个字,毕竟这是个实验项目,不象写网络小说一样可以保证每天一更。
至于量子计算机,则远远超出了我能理解的范围和这个项目的架构了。而且就算是真实的生命,它的基础也是普通的电信号、化学反应,可能和量子计算不沾边,否则也不会出现人脑算不过电脑这种现象了,因为如果人脑用到了量子计算,那从生下来起,每个人都 应该是数学大师才是,但现实显然不是。
Copy link
陈凯文
陈凯文23 days ago
未来你的项目用上量子计算机就牛了
加油啊~
Copy link
tangliyuan1028
tangliyuan1028a month ago
我一直觉得可以通过计算机从最基层开始设计类似于人的活体,可是由于自己的技能还欠缺太多,没办法构建,终于看到有人做了,谢谢大佬,激动!我会持续关注整个过程的!
Copy link
920504_drinkjava2
drinkjava2owner30 days ago
谢谢关注!一个人是做不好的,关键是思路,希望能吸引更多的人关注这个方向。
Copy link
920504_drinkjava2
drinkjava2ownera month ago
谢谢hl330捐款
Copy link
920504_drinkjava2
drinkjava2ownera month ago
谢谢陈秋华捐赠和大家的加油!最近进度有点慢,有点小压力了。争取尽快将第一版模式识别功能做出来,有了模式识别,可以做的事就多了,例如可以放几条蛇出来吃青蛙,青蛙就会进化到看到蛇形状的图形就自动逃开,蛇也采用相同的脑结构但是以青蛙为食物,然后再加上障碍物、窝什么的,会越来越好玩的。
Copy link
' or = '
' or = '22 days ago
原始的生命,一开始不一定是蛇吃青蛙.会不会因为青蛙进化速度比蛇快,变成青蛙吃蛇?
Copy link
侠情
侠情a month ago
不知道什么时候star的虽然没有一直关注也看不懂到底在干嘛但是还是感觉很好玩加油~
Copy link
920504_drinkjava2
drinkjava2ownera month ago
谢谢各位的star已经过500了。最近的几个提交都是在构思Organ和Cell的参数地基打好了才能放心地玩搭积木。目前的工作方向可以用一长句话来形容利用随机播种脑细胞加生存竟争筛选的方式搭建一个结构可视化的、能实现模式识别功能的3维脉冲神经网络。
另外才想到在Cell参数添加一个动态触突数组它可以在不同光子来源方向上动态创建触突这个比较好它解决了结构问题不再拘泥于正三角或90度正交结构等与细胞的分布结构有关的问题任意来源的两个或多个光子都可以通过创建动态触突把这些有重复关联关系的信号从噪声信号中筛选出来从而可以模拟出任意角度的波驻点逆向成像现象。
Copy link
333078_lovefc
封尘a month ago
加油!
Copy link
920504_drinkjava2
drinkjava2ownera month ago
非常感谢!
Copy link
920504_drinkjava2
drinkjava2ownera month ago
谢谢王二麻子的捐款!我会加油的。
Copy link
板蓝根
板蓝根a month ago
佩服大佬,一定要坚持下去!
Copy link
920504_drinkjava2
drinkjava2ownera month ago
谢谢鼓励!现在确实是攻坚阶段。模式识别解决后,可以说这个项目的任务就完成了一小半。本来想用手工搭建出体全息存贮的实现,后来野心膨胀,还是想走随机生成结构这条路,导致难度加大。 另外在群里收到脉冲神经网络的介绍,很有启发,和这个项目在算法上好象是有共通性的,详细链接请百度"仿生脉冲神经网络--揭开生物智慧之迷",它的网站上的示例是用脉冲神经网络来实现了模式识别,正好是我现在要做的目标,只不过它是硬编码,算法我看不太懂,如果能看懂的话,对于阶段性淘汰随机结构进行筛选会有帮助。现在这个项目,细胞要考虑的参数有:入射、出射光子的能量强度及比例、虚拟触突的数量、角度、影响范围、细胞能量值、疲劳阀值等。 器官要考虑的参数有:大小、形状、位置、细胞类型、分布密度等。 这么多参数放在一起,要利用随机数来筛选出可以工作的整体,是一个复杂的工程,用炼丹来形容是很形象的。如果简单地用最终结果来淘汰是有问题的,甚至不可能得出结果,即使有海量样本数也不行,有可能按下葫芦浮起瓢,一两个参数合适的时候,其它参数又被随机破坏,所以要引入阶段性筛选(也就是说循序渐进)是很重要的,例如用光子在细胞间传播的总距离来作为一个加分条件,可以促使细胞们互相连接起来形成长的路径。大自然一直走的阶段性筛选的路子,但人的介入就试图进行跳跃式发展,用猜测来代替循序渐进,静不下心来,算是在撞手气。
Copy link
920504_drinkjava2
drinkjava2owner2 months ago
现在3D脑环境已搭好文本模式识别的测试环境已搭好要开始设计大脑往脑袋里面撒细胞了如果有兴趣的同学也可以现在参与了往里面扔各种器官播种脑细胞看看会跑出什么。目前有三个脑结构方向1金字塔结构所有输入输出区位于一侧。 2正交结构眼睛和其它输入输出区在物理上呈90正交。 3.不手工设定它的结构,完全由电脑随机生成器官。 各有利弊,只能走着瞧了。
另外现在这个ABCD模式识别检测是对应一个字母图像一个脑内区这个不高效人脑对于文字存贮例如3000个字的识别不是开启3000个区而是通过声母区+韵母区以及它们的激活时序(例如国王和王国是两个意思)来存贮,这是一种更高效合理的编码方式,以后要借签,图像与声区编码互相唤醒,这是正常的存贮方式。
Copy link
920504_drinkjava2
drinkjava2owner2 months ago
谢谢张老师的捐款!
Copy link
2201740_qsssyh
青衫2 months ago
数年后机器人在扫荡人类数据时发现了这篇早期人类对创造生命体猜想的文章, 并把文章的发布时间定为机器人元年
Copy link
920504_drinkjava2
drinkjava2owner2 months ago
哈哈有趣的想法,不过我感觉在有生之年是能看到奇点的到来的。
Copy link
乌云
乌云2 months ago
这个变异、进化是怎么体现的,看完介绍后感觉好懵逼
Copy link
920504_drinkjava2
drinkjava2owner2 months ago
你可以用git reset --hard 46388a75e7e回到4.12提交版,就看得更清了,大体思路是这个青蛙有四个脑细胞,分别对应四个运动方向,另外有一个眼睛,里面有四个感光细胞,分别可以看到四个方向一定距离有无食物,然后程序里就随机生成联系神经,如果碰巧联系神经的输入端在感光细胞,输出端在动运细胞,细胞就会向食物运动,然后通过自然选择留下这个联系神经,这样青蛙就一代代进化了。至于青蛙们的行为我也是一脸懵逼,没想到只给了它们四个方向,它们就会进化到自已精确地定位食物。这是个非常简单的逻辑,但很好地说明了自然界中生物眼睛的诞生是一个很简单的大概率随机事件。
Copy link
seanXieHZ
seanXieHZ2 months ago
有意思的项目 持续关注!
Copy link
妖孽
妖孽2 months ago
奈何本人没问题,一句牛逼走天下,持续关注中,加油
Copy link
920504_drinkjava2
drinkjava2owner2 months ago
谢谢你们的关注,虽然这个项目目前还很简陋,我会加油的。
Copy link
iam
iam2 months ago
感谢分享您的源码和解说整个设计、思考、修正过程,学习中。
Copy link
5017340_kalakuer
kalakuer2 months ago
太强了,学习学习
Copy link
431003_xuwangcheng
凤凰院大白2 months ago
下载了运行了下,一脸蒙蔽。
Copy link
920504_drinkjava2
drinkjava2owner2 months ago
目前的run.bat是走跷跷板平衡演示run3d.bat是一个空的3维脑框架还没有完成第一版脑结构的编程。如果觉得这两个都不有趣的话, 你可以在frog根目录运行"git reset --hard ae34b07e"回到旧版本然后再运行run.bat就可以看到比较有趣的找食画面了然后调整Env.java中的参数可以调整显示的快慢、青蛙的数量、屏幕显示大小等。我现在没有时间做出更有趣的演示例如让青蛙有四条腿站起来行走并保持平衡目前的2维脑这个逻辑是可以做到的只要添加对应的腿运动区、站卧信号、平衡信号感受区就可以了。但是我现在所有精力都放在3D脑设计上正在尝试用随机生成的神经元排列产生字母)模式识别功能(见Readme介绍)。有了模式识别功能后,可以省略一些信号输入区,例如可以用眼睛的图像来判断是否身体平衡。它这个模式识别的特点不是针对具体某个图像来调整权重,遇到新的图像又要重新训练,而是重点在于它这个脑结构本身是从无到有生成的,会随着淘汰和变异越来越复杂,它的识别精度可以没有大数据训练那么精确,但它是一个通用、快速、小样本的识别模式。
结合gitk命令和"版本提交记录.md"的介绍你可以了解这个项目的开发历程并可以用git reset --hard 切换到任一个历史版本。
Copy link
920504_drinkjava2
drinkjava2owner2 months ago
我告!现在乒乓球训练到了这么高的水平:
表象内容:放松训练开始→发球前默念动作程序→手握球在台上近距离来回弹三次球(习惯动作)→抛球→发正手短球→侧身正手冲斜线 / 发反手底线急长球→正手冲直线。
教儿子打球,偶尔翻到一个网页,读到以上一段话,注意以上动作全是是头脑中“假想”出来的!它将人脑神经网络的脑内“虚拟输出器官”的运用达到了淋漓尽致的水平,原来人们早就意识到,虚拟出来的动作、图象也可以形成和加强条件反射。
Copy link
920504_drinkjava2
drinkjava2owner2 months ago
可以尝试丢弃触突,把信息本身做成一个个带方向的类似光子的信息团(因为波是有方向的)随着传播逐渐被神经元细胞介质吸收或反射出新的信息团。这样可以一个循环可以完成所有神经元的一步信息处理不再一个器官一个器官地去遍历。用x,y,z三个方向的长度来表示这个向量的方向而不是直接用角度因为这样方便3维数组寻址。整个脑空间是一个立方体划分成nxnxn个空间用三维数组表示每个小空间元素里可以存在0或多个神经元如果小空间为空则相当于真空信息传递会越过这个空间直到碰到下一个神经元或出界。神经元是最小信息处理单元可以有五花八门的参数例如可以增强、反射、折射、拆分、远距离跳过间隔的神经元)传输信号等。用随机进化来筛选参数。
也就是说每个小空间里可以存在两类实体:信息元或神经元,而且数量可以有多个。
Copy link
920504_drinkjava2
drinkjava2owner2 months ago
大江歌罢掉头东,我胡汉三又回来了!
现在正式开始3d脑的编程原来的2维脑还保留新起一个目录core3d放新的3d脑青蛙。二维脑的主要问题是这个动态随机产生的联接不符合高等生物脑的运行原理解决不了复杂问题高等生物脑在生存期不是动态创建新的细胞和连接而是通过已经有的细胞之间交流信号调整触突权重来处理信息。3维脑将保留2维脑的一些基本架构例如器官及变异的概念要保留但只用来播种细胞整个脑的细胞数量是固定的通过波的传导来达成从视觉细胞到运动细胞之间的信息通路。任务又回到原点找食从一群固定不动的青蛙要进化到能看到食物就向食物运动。虽然任务一样但信号传播原理是完全不同的。
Copy link
1471685_zssss
zs2 months ago
期待!
Copy link
wangtao
wangtao2 months ago
很高兴看到楼主继续更新
Copy link
2306235_enejavsen
Mr.JavSen2 months ago
加油!]
Copy link
920504_drinkjava2
drinkjava2owner2 months ago
谢谢你们的鼓励! 最近我所有时间都在做另一个开源项目的分布式事务,好在总算做完了。下面将集中所有精力在这个项目上。
Copy link
4813200_liushaokang
刘少康3 months ago
mark ,愿中国开源社区出现越来越多的学者。
Copy link
920504_drinkjava2
drinkjava2owner3 months ago
谢谢关注! 不过我真算不上学者,用“跟着感觉走”来形容这个项目比较恰当,也许有一天走错方向,把大家带到沟里去了,哈哈。
Copy link
920504_drinkjava2
drinkjava2owner3 months ago
这个项目我暂时不会更新了将转向新的3D脑模型设计。但有兴趣的同学也可以在这个2维脑的基础上接着改改程序试试加上与门、或门等逻辑器官看看能不能提高它的找食效率表现出更复杂的行为模式。
Copy link
920504_drinkjava2
drinkjava2owner3 months ago
谢谢LongFer的红包每一份捐赠都是对这个项目最大的支持和鼓励!
下次更新时会加一个公积金台账,但只记捐赠名单和当前总额,不记进出,这样即体现了不鼓励金额攀比,自愿随意的原则,也能通过历史记录查出每笔的进出明细。
Copy link
zzllrr
zzllrr3 months ago
大佬好!你的项目很宏大和深远,值得鼓励和膜拜!
但项目的未来可能会陆续遇到多种不可能求解的数学问题如Chaitin不可计算问题、哥德尔不可判定问题
这是因为探索智能的本质,这种人类难解答的世界本源问题,最终都会指向一系列终极数学问题,所以我建议需要项目参与者需要具备强大的数学理论知识和应用能力储备,以及一系列数学方面的脚手架工具,以避免走太多弯路,或者走入陷阱。
以我之见,通过计算机实验来探索生命是一条非常好的路,但是现有的传统计算机在底层设计思想上,
并没有突破和超越图灵、冯·诺伊曼当初设计思路(当初并不是为了实现机器智能,而只是为了机械自动计算),
可能因为算力(即使分布式+超级计算机)和逻辑限制不足以探索到智能的本质。
量子计算机在设计和计算力上,可能会稍微好一些,但距离涌现出真正的智能,估计希望还是很渺茫的。
DNA生物计算机也许是未来大有前途的方向但也困难重重。
个人认为生命应该涌现于复杂神奇的大自然通过计算机复杂度远低于大自然能涌现的顶多是一些有智能影子带有人工色彩的Pattern模式。
建议阅读一下集智俱乐部关于智能体的讨论或者Stephen Wolfram数学软件Mathematica、Wolfram Alpha作者的书NKS(New Kind of Science思想也是使用计算机探讨生命Pattern但其在业内褒贬不一)以及Conway康威美国数学家的生命游戏相信会有更多启发。
当然如果有读者强烈要求这个项目有参考文献的话,不妨从中找些学术文章,作为参考源。
顺便推广一下本人在Github上的开源数学软件小乐数学zzllrr Mather也希望更多人加入将来在探索生命智能等大问题上可能派得上用场。
Copy link
920504_drinkjava2
drinkjava2owner3 months ago
您好!谢谢你对这个项目的很高评价,这个帖信息量有点大,我也逐一谈谈我的看法:
哥德尔不可判定问题是不适用于判定机器智能的,因为随机数的引入可能已经打破了数学"形式系统"这个前提,如果有人认为计算机的随机数是伪随机,那好,我用我家水壶烧水的分贝值的小数位作为随机数,那么这个计算机就不能用哥德尔定理来判定它了,问题是,机器有没有智能难道是由我家的水壶决定的?这显然很荒谬。我的观点是意识只是一种现象而已,它本身就不独立存在,只要物质运动能表现出智能现象,在解决实际问题上能达到或超过人的表现就行了,包括人的意识活动,能不能用哥德尔定理判定它并不重要,因为智能只是一种表象而已,本身就不存在,也就谈不上什么本质不本质的了,同时也就不必纠缠是用量子、生物、电子、光子去实现类似的智能现象了,顺便说一下(个人看法),现在的计算机硬件算力很可能在十年前就超过了越过奇点的能力,只不过软件或者说程序员的思路还没跟上而已。
另外这个项目不反对应用数学来解决问题但通常解决问题的方式有两类一种是按照计算一种是按照经验例如猫在奔跑身体不平衡了按数学家的方法需要计算它的重心、速度、角度才能确定伸出哪只脚及伸出的角度但对于猫来说它解决这个问题的方式是根据经验感到身体歪了根据经验伸一只脚就行了。至于经验哪里来的是长期与自然生存竟争自然形成的。这个项目因为本人数学知识差也是主要走的经验的路子看到问题了根据经验想出一个方式去解决它例如“体全息存贮”这个方案按经验应该能应付大数据存贮的难题这个经验并不是凭空想象出来的而是花时间去Google去挑选出来的。这些经验也是人类进化、社会发展自然形成的实际上也包括了数学理论的一些成果只不过使用者可能都不知道就直接当成经验来用了。
另外还有一种情况数学可能也是无能为力的,就是三体这种混沌、非线性问题,当三体转变为千体、万体、亿体、百亿体时,整个系统的行为更是无法用数学工具来预测它的行为的。但是反之,利用成千上亿个虚拟神经元倒是有可能很简单地模拟出类似的行为现象。
至于其它人工生命项目关于Pattern现象的研究个人认为意义不大因为人工生命的最终目的是要与实际社会交互解决现实的问题不能只局限于电脑虚拟环境中的各种现象而是要随时要准备给这个人工生命一个摄像头让它进入现实解决真实世界的问题包括它自身的存在问题所以模式识别这个功能是必须的而且很早就要加入(自然界中眼睛是廉价的,米粒大的昆虫都有眼睛),人工生命的最终目的是造人,决不是游戏。
最后欢迎你对这个项目的关注和建议,如果有一天这个项目需要用到数学知识去发现或解决问题,还需要你们的帮助,我是不介意任何方式去实现这个最终目标的,在二十年前,甚至想过在几平方公里面积上随机撒布单片机这种方式去实现一个脑模型,可想而知为了这个目标我是不择手段的。
Copy link
haibei
haibei2 months ago
同意,目前计算机底层的计算逻辑应对生命进化还有一定局限性。而且意识体进化的标志是具有能把具体的行为抽象化的能力,比如“知识图谱”就是人类的抽象意识对机器的赋能,如何让机器具有抽象能力,并且还消耗很小的代价,这个命题挺大
Copy link
920504_drinkjava2
drinkjava2owner3 months ago
或者不必去人为设计脑的三维物理结构而是采用全联接模式波的概念依然适用。从它的输入、输出器官以及它们之间必须完成的信息关联逻辑上来设计这个脑。先简单地把这个脑的物理网络设计成一个球形组成一个立体的全联接神经网格。用一个西瓜来比喻西瓜瓤代表神经元网格细胞在西瓜上面开一个方形代表眼晴表示2维图像信息的输入(脑没有直接的三维信息输入器官,只能用两个平面图像的视差来估算感觉距离)。割一条缝,代表耳朵,表示单维声音信息的输入(声音是一种单维的波信号),扎许多个点,代表痛、触、痒这些点信号输入,一个点就代表一个固定位置的神经元兴奋输入区。用西瓜籽来代表输出器官区,输出器官区可以分两类,用黑西瓜籽来代表肌网兴奋区这种"明显"的输出器官区,只要输出区兴奋,相应的身体上的肌肉就会运动,用白西瓜籽来来代表脑内"隐形"的、不可见的输出器官,如脑内成像区(这是二维的)、脑内讲话和唱歌区((这是单维的)。所有的输出器官区本身也是一种输入器官区。例如在脑海里想象一个圆形,从圆心到往上画一条线与圆边接触,再从圆心往右画一条线与圆边接触,这个图形在你脑海里隐形的成像区里已经输出成像了,同时这个图形也会被作为输入图像去激活其它脑区。例如你可能已经联想到时钟和三点了。 从物理及模拟上来说,每个激活的细胞都象一个波源一样发散信息,在这些波重复、反复交汇处,细胞被撑大,表示信息被贮存住了,下次再有波过来这个驻点将会成为另一个波源发送新的波,波的强度大小取决于驻点的大小。
从逻辑上来说网经元网格必须要具备的功能是2维图像要能激活若干2维图像(视网膜图像激活脑内成像区如相似场景、相关文字,以及脑内成像区要能激活其它脑内成像区)、2维图像要能激活若干单维图像(视网膜图像激活脑内单维的输出器官,如激活脑内说话区), 单维信号要能激活若干2维图像(如实际听到的或脑内讲话区的语音这个单维信号要能激活脑内成像区成像出一个文字或对应的2维图像)。
从实现途径来说,这个全联接神经网络遵循一些简单的规则,信号多的地方,神经元就用进废退进化得更密一点好让它有更大的信息传输和存贮密度。
另外有一类特殊的联接关系,这是智能的基础,就是联接神经元,主要作用是联系神经元驻点,越大越肥的驻点之间,有越有可能形成更多的联接神经元。联接神经元分两类,一种是可以遗传的,形成一种可遗传的先天性的动作条件反射。另一种是后天动态形成的,它的形成和波的驻点形成是相同的,但区别在于甜、苦、痛等奖惩输入信号参与了强化或削弱这种关联。
Copy link
920504_drinkjava2
drinkjava2owner3 months ago
金字塔结构只是一种假设的构思,我想了下,有可能不靠谱,与它逻辑上类似,但物理形状不同的结构也可以是其它形状(但应该是三维的)例如是两个呈90度交叉的柱状体(视觉是柱状体,其它信号可以是平面),其中垂直的柱状体表示视觉信号,水平的柱状体(或平面体)表示声音信号。柱状体的概念可能更通用一些,因为金字塔结构要求所有的信号输入在金字塔的顶端,而柱状体交叉这个结构可以形成一个复杂的交叉结构,多个信号类型之间如果没有直接交叉关系,是隔离的,只能通过间接的交叉关系来中转一下进行联系。
现实中的高等动物,貌似声音(语言)这一维的信号更重要,我原本设想的青蛙只有眼睛就够了,用一个复杂的图像文字去联想出实物复杂图像(以及反之)这个功能,似乎不靠谱,因为图像文字不能简单地用“单个”神经元的兴奋来代表,所以以后就不能简单高效地利用随机试错、优胜劣汰、奖励强化的原则来将这些神经元联系起来,反之,如果引入声音(语言),最终图像可以简化地对应单个神经元兴奋,便于以后的处理。但是声音本身虽然比图像信息量少,但它也是一个比较复杂的信号,不方便电脑模拟,所以要引入文字而不是语音概念了,直接用一个文字代表一个脑神经元兴奋区,这样方便编程,以后每增加一个图像,就增加一个脑神经元区的兴奋(位置是固定的由电脑预先分配1000个区但每个区对应的图像是由程序员后天训练时输入的对青蛙来说只有区并没有文字图像也没有声音以简化编程例如对于蛇这个图像外国人脑中有"Snake"这个语言区兴奋,但中国人脑中有"蛇"这个语言区兴奋,它们的位置是不一样的,但这个位置在哪里毫不重要,重要的是有这么个位置产生,蛇的图像上升到一个单个的脑区兴奋,才可能方便地进行下一步的信号处理,如条件反射的建立等。
如果没有高维度的语言(即声音)区,只依靠视觉信号进行联想,可能效率非常低(这很好理解,因为电脑编程模拟都很困难)。给鸡喂食前敲几次钟,以后只要敲钟,鸡就会跑过来,但如果喂食前写个“喂”字给鸡看,可能只有非常非常非常聪明的鸡才能认得,这是要喂食了。如果没有语言,原始人要教会小孩蛇会咬人这个概念是非常困难的,可能只能让蛇咬一口,然后躺下装死(可能是真死),才能模糊地让小孩联想到蛇会咬人,需要跑开,这个信息联想效率就太低了。
Copy link
巫哲仁
巫哲仁3 months ago
类似于达尔文的进化论,但是人和其他生物,不是进化而来的,你相信现在的人是由古老的单细胞进化而来的吗,如果真的存在进化,那为什么猩猩猴子一直没有进化成人,甚至没有中间过渡生物的存在。所以一个青蛙,按道理不可能通过计算机创造一些条件,进化出“智能”或者“意识”,不过作者想法和实践能力厉害了,佩服,先关注了。
Copy link
920504_drinkjava2
drinkjava2owner3 months ago
进化论是一个很多人到现在都不相信,但确实是被(考古)科学证实正确的科学结论。而且你举的例子是个反例,猩猩猴子没有进化成人,恰恰是因为它们的同类猿猴先进化成人,抢占了他们的生存空间。数量和随机数会产生无数种可能,我相信随便从地上捡条蚯蚓扔到一个无生命但有食物的星球,几千万年后它们也会进化出意识的,有的蚯蚓长得大,有的长得小,长得大的偶尔可以发现吃小蚯蚓,小蚯蚓偶尔进化出腿跑掉了,长得大的偶尔进化出跑得更快的腿,还有感光的眼睛好追小蚯蚓...
Copy link
巫哲仁
巫哲仁3 months ago
加油!
Copy link
920504_drinkjava2
drinkjava2owner3 months ago
谢谢!
Copy link
920504_drinkjava2
drinkjava2owner3 months ago
谢谢Dotao的红包! 也谢谢给项目点赞的同学们!你们的支持,让我对这个项目的发展前景更有信心了。
Copy link
5192219_viewlei
viewlei3 months ago
idea很好想问一下你这边参考的论文有哪些呢
感觉前面做的这些基本的功能,大概用元胞自动机+规则+生成随机数的思路就可以完成(个人认为)。
这一块的东西我认为代码不是最重要的,重要的是依靠一个成体系的理论框架,数学模型,能严谨的证明其可以收敛到你期待的目标(此处为你提出的“造出一个真正意义上的人工生命”)。如果有这方面的论文或者证明,希望能共享下。
Copy link
5192219_viewlei
viewlei3 months ago
这个idea或许比较适合做群体智能方面的研究比如蚁群算法。
Copy link
920504_drinkjava2
drinkjava2owner3 months ago
您好,很惭愧作为一个业余爱好者,这个项目无法给出证明或论文来证明它会达成最终目标,简单说这是一个与现在的科技界脱节的“民科”产品,信则有,不信也无防,而且作为体制外人,也不太了解有无类似的科研项目及进展。当然,作为科研最基本的一点是如果它能作出一些成果,在实践中可以运用,则这个项目本身就有意义了,不需要自证自身了。目前只有“找食”这个成果虽然没啥用,但至少解释了"智能现象的产生、生命和非生命没有本质区别"这些基本现象,而且以后随着项目进展,也许会出现一些更智能,更“有用”的智能现象出来,就更有说服力了。
另外这个项目的一个初衷就是相信不用学习和掌握复杂的数学知识(我的数学退化到初中水平了),仅仅依靠电脑胡乱地建模、试错、淘汰,就能逐渐地搭建出一个越来越复杂的模拟生物,直到达到非常高的智能活动现象。如果必须运用高深的数学知识或理论来指导,反而与这个基本理念有冲突。所以这个项目可以说是一个最适合"民科"从事的神经网络科研(如果这也算科研)之路。
另外它的野心比较大,不懂什么叫蚁群算法,反正最终目标是要造出类似人类表现的通用智能,在此之前,所有的成果都是阶段性的,是有疑问的,甚至可能是岐途。而且它是不择手段的,并不局限于随机数,为了这个最终目标,如果有用的话,它不排斥引入任何现成的算法成果, 可参见这里第13条和21条。
这个项目本来不应由我发起的更适合做个安静的预言家。二十年前我写信给中科院就建议“把构造生命体作为最迫切的任务并投入大量人力、物力”。如果说论文的话这篇写在1996年的民科文可供参考:人类还会进化吗?-谈机器智能发展前景
Copy link
920504_drinkjava2
drinkjava2owner3 months ago
另外"造出一个真正意义上的人工生命”这个目标实际上已经达到了,不过途径很奇葩,它通过演示随机进化能产生智能现象来证明"生命只是一种现象,和非生命没有什么本质的不同"。也就是说把题目本身给推翻了,即然生命没有什么特殊的地方,那也就不存在什么"真正意义"上的生命判定标准,只要能表现出一些类似生命活动的现象(这些现象是人为规定的,正如我给出的四条),就大差不差可以了。
Copy link
5192219_viewlei
viewlei3 months ago
感谢回复,加油!祝好!
Copy link
920504_drinkjava2
drinkjava2owner4 months ago
谢谢Wangtao的捐赠! 虽然金额不大但意义大这是Frog项目的第一笔收入。我盘算万一项目做大了可以用收集的捐款发布一些开发任务或回馈项目的具体参与开发者。谈钱伤感情但没钱只靠程序员的人个奉献项目的发展没有保障就拿我自己来说有时候忙起来一星期都抽出不几个小时来编码。程序员的压力大时间很宝贵996的发源地啊当程序员的估计没多少富二代可以大把捐款吧。 其实谁如果有心,认可这个项目的开发理念,也可以把这个项目向大款们老总们介绍介绍,骗一些赞助来,更何况也不叫骗,个人觉得在这个方向的投入是会有回报的,而且很可能是今后通用人工智能的一个研究热点。
Copy link
wangtao
wangtao3 months ago
没想到是第一个捐款的。。。。来看这个项目的关注度还太少了!!
Copy link
920504_drinkjava2
drinkjava2owner3 months ago
已经很不错了我以前做jSqlBox项目用心地做了2~3年但还不到这个随手做的小项目一半点赞量有点无心插柳的感觉。
Copy link
ck
ck4 months ago
在这里让我想起了达尔文的进化论。不过这里你是上帝,计算机规则(其实是人为定义规则)代替了自然规则,进化条件由因果条件代替了自然的化学物理条件。还有就是仅仅基于规则的行为,不能叫意识,意识前面往往还带着“自主”。也就是说我可以逆反规则条件,发现它们并操作它们,做规则以外的事,这样的存在才能叫有意识的存在,否则只能称作数字游戏。你的青蛙如果哪天能竖起中指对着你这个上帝,那它就是有意识的存在了。
再说说我对意识感性认识吧意识是矛盾体像莫比乌圈。意识是镜子里对现实世界的成像不同材质导致了不同成像也就造成了不同意识但它们的都是一致的。材质差得太远会让我们交流困难如人和狗材质相同但一面照着繁华人间另一面照着寂寞深渊同样无法交流正常人和养在地窖里的人【邪恶实验】。总结就是意识的存在必须要两个元素1.能反射世界的镜子。2.秩序世界。
Copy link
ck
ck4 months ago
人(生物) --五感--> 世界。机器 --索引数据-->XX。 世界≈XX。
Copy link
wangtao
wangtao4 months ago
每个人都要从头开始训练,如果能想办法集中很多人的电脑一起来训练一个模型,创造一个更大更复杂的环境,最终效果一定很惊艳
Copy link
920504_drinkjava2
drinkjava2owner4 months ago
这个项目主要作用是探索,不太适用于多人联网解决一个并行计算/建模问题,如果它探索的内容得到实验证实,将来会考虑移植到并行硬件如利用显卡来加速。在探索阶段,如果有银子,直接用超算来跑更简单易控。不过没钱的情况下,可以用时间换空间,我现在正在做的是加入分组训练功能,每个测试可以少到只有几个甚至单个样本,然后从一组测试跑出来的结果中选取几组找食效率最高的青蛙的蛋,进行下一组测试。这个功能的初衷是打算做个青蛙走跷跷板自动平衡的演示,但是为了省事,不想画很多个跷跷板,所以只能每次出场一个青蛙,所以分组测试是要加上的。
Copy link
920504_drinkjava2
drinkjava2owner4 months ago
思维,可能就是控制大脑一块(或最多几块)虚拟游标区在脑内滑动(主要是在立体金字塔的上半部分),滑动到哪里,哪里的神经元就兴奋,如果长时间控制这个游标区固定在一个位置,神经元会疲劳,需要更多的能量去维持这个游标区不要移走。人在做梦的时候,为了避免疲劳,游标区会自动向新的区滑动,所以梦里不容易有逻辑性地思考问题,因为游标区的走向不能很好地自主控制。
游标区可以解释为什么大脑的思维总是串行工作的,因为同时活动的游标区通常只有一两个。串行工作机制有了解释,那又来了新问题,人脑是怎么防止产生多个游标区,或是防止一个游标区都不产生的(后者就相当于大脑当机,白痴状态)?
Copy link
someome
someome4 months ago
建议了解一下《自动控制原理》,强化学习其实就是一个自动控制的例子,人类的学习也是
Copy link
920504_drinkjava2
drinkjava2owner4 months ago
《自控原理》有没有解释蚂蚁为什么会搬家? 大自然造蚂蚁之前有没有学过《自控原理》? 个人认为类似生物这种复杂的系统不需要搞懂每个细节原理(如果真要说清蚂蚁搬家原理的话,几百页的公式可能也说明不完),只需要用各种方式去试错、去模拟,如果能模拟出来类似的现象就行了,当然,这个试错、模拟的工作是交给电脑,程序员只需要仿照大自然,维护一个试错、模拟、淘汰的环境即可。
Copy link
someome
someome4 months ago
蓝脑计划宣告失败:想用计算机模仿人脑,轰动后如今死得悄无声息
Copy link
920504_drinkjava2
drinkjava2owner4 months ago
这个目标是对的,问题是途径不对,如果不理解蚂蚁的大脑,不能模拟出蚂蚁的行为,就不要说模仿人脑了。
Copy link
920504_drinkjava2
drinkjava2owner4 months ago
突然想到: 信号反向传播到成像区就可以成像,如果信号再继续反向走下去会如何? 可能会浓缩到一个点上,也就是说成像区象夹心饼干一样位于浓缩点和存储区的中间,这样也更方便利用随机试错算法在这些浓缩的点上建立新的联接。整个脑逻辑结构就象一个金字塔,处于最高层的是浓缩区,处于中间层的是成像区(视觉感光区只是成像区的其中一层,而且不占据整个层,存储层的信号有可能绕过视觉感光区直接在成像区成像),处于最下层的是存储区,思维区不再是单个的层,而是包含了浓缩区、成像区以及它们内部动态生成的随机联接这一个立体小金字塔结构。以上这些"区"只是人为定义的概念,各个区之间没有明显的界限。以下原则可以用来构建整个脑结构,所有的神经元都遵循这个简单的原则来设计:整个脑结构是金字塔结构,信号可以从上往下传送,也可以从下往上传送,越往下层,神经元的数量就越多,动态生成的联结(条件反射)往往更容易建立在塔尖部位的神经元之间,因为塔尖部位的神经元数量少,更容易实现连接,而且塔尖部位代表了高度浓缩的抽象信号,在它们之间建立联接可以达到最高的信号处理效率。
Copy link
920504_drinkjava2
drinkjava2owner4 months ago
有强迫症的人不能看这个项目,心累,明明食物就在旁边,拐个弯就行了,偏偏就不吃,恨不得自己上去代它咬一口,累啊。
中间那个不是绿化带,不是隔离栏,而是个陷阱,青蛙掉进去就会死掉,当然,后来青蛙莫名其妙就学会不掉进去了。
Copy link
920504_drinkjava2
drinkjava2owner4 months ago
看来JQ暂时是搞不完了。下面先清理一下这个项目有些垃圾类要删掉。网格形式的模式识别先不急先把奖励信号利用上目前奖励信号被白白浪费了。要改成每次吃到食物之后近期活跃过的所有神经元的fat值增加就好象训兽师每次在海豹完成一个动作后就给它条鱼吃一样吃完鱼之后海豹就会把刚才的动作记得更牢。另外相应地动态生成随机连接(目前是RandomConnectionGroup)也改成每隔几步step之后就动态生成一些而不是等青蛙死掉后再由它的后代去生成由后代生成新的随机联接虽然可以体现优胜劣汰但是太滞后了根本无法利用上宝贵的奖励信号。创造性思维就是将不相干的神经元联系起来在这里具体就是随机产生新的联接然后由食物奖励来强化(保留)。
Copy link
920504_drinkjava2
drinkjava2owner4 months ago
目前找食效率已经很高了而且也基本不出边界了把奖励信号利用上这个设计目前看来也不是很迫切下面考虑先上模式识别放几条小蛇进来吃青蛙如果认不出小蛇形状的青蛙都会被吃掉为编程方便小蛇暂用NPC来充当当然今后小蛇也可以考虑做成真的人工生命。
Copy link
5177524_longfer
LongFer4 months ago
我觉得项目很好,请问大佬怎么加群呢
Copy link
920504_drinkjava2
drinkjava2owner4 months ago
如果想长期关注这个研发方向请加我微信yong99819981并留言人工生命群谢谢
Copy link
someome
someome4 months ago
大神可以了解一下深度强化学习和OpenAI gym感觉模拟大脑神经元和生物进化的思路是一条歪路。生命的本质无非就是复制和变异实现是很简单的。最重要的是人类的意识和思维这也是人工智能这个学科的最终目的。深度强化学习是目前最有可能取得突破的方向领域大神可以关注一下这方面的信息。“意识从来就不存在意识只是一种现象”我不同意这个观点。我的观点是“意识是一种状态对过去和现在的记忆的自我感觉的一种状态”。其实几百年前笛卡尔就已经解决了意识是什么的问题。是的就是笛卡尔的哲学命题“我思故我在”。
Copy link
920504_drinkjava2
drinkjava2owner4 months ago
模拟大脑的进化是一种手段,指望让电脑来自动生成复杂的脑结构,这个有投机成份,能不能成功有点靠运气,所以这个项目也不排除人为参与设计,允许吸收其它算法如深度强化学习(这个我是弱项,因为我是外行,等我有时间一定学习,或其它人也可以参与改进这个项目),编程者也需要较高的编程技巧,一条路走不通再试另一条。 至于是不是歪路并不重要,只要能逮着耗子就是好猫。
关于意识是什么的问题,这个项目的看法是认为讨论意识本质之类的话题是无意义的,纯属浪费时间,"杯子"、“自行车”、"意识"、"智能"、“勇气”这些都不是存在的实物,只是人类语言中对一类现象的归纳而已。这个项目只从程序能实现的功能来判断它是否足够"智能",足够有用,直到能够实现解决一些现实问题,例如模拟动物实现一些复杂的工作如模拟一只狗来实现垃圾分类,当然,如这个项目开头所说,"有用"只是暂时的,最终它的目标是要造出有自我意识表现的通用人工智能。
Copy link
920504_drinkjava2
drinkjava2owner4 months ago
这个OpenAI项目我查了一下它的目标和这个项目的目标是完全一致的就是造出一个通用的人工智能。看来国外已经认识到单纯通过算法来解决开放性的复杂问题(如自动驾驶、翻译等),是一条走不通的路,最终人工智能的解决方案是"通用"智能,一个模型能解决所有问题,也就是说能造出最终智力表现超出人类的机器人。关于如何防止人工智能反制人类,相应地他们的看法就是“更多人拥有同样的能力来达到相互制衡”,这个观点也与我的观点有点接近,只不过没我这么明确彻底地倒向"投降派",人工智能研发不能被阻止,但可以通过人工智能立法保护人工智能人权、防止人类伤害机器人等方式防止人类被灭绝。
另外OpenAI最终实现途径和Frog在算法逻辑上可能是等同的都需要电脑来生成脑结构而不是人来搭建。不同的是Frog给出了具体的研发路线和考核目标每一步人工生命的进展都是可以考核评价的从低等生命的行为一直模拟到高等生命的行为表现就行了。
Copy link
heychina
heychina4 months ago
伟大的目标,大佬,我想加入开发团队,贡献自己的一点力量.
Copy link
920504_drinkjava2
drinkjava2owner4 months ago
谢谢你及最近好多同学的点赞,看来大家都对人工生命这个研发方向很感兴趣。但最近关注这个项目的请耐心等待一段时间,不光因为我最近没时间,而是因为这个项目架构方面会有极大调整(添加模式识别和记忆功能,见评论)这可能需要较长的编码时间我一般会在有青蛙的行为有明显改进时才提交到码云防止同学们down下来却看不出什么名堂一头雾水。当然了如果有同学自认为思路和编码能力较强的也可以试着加入模式识别和记忆功能争取能走在我的前面。目前的目标有两个1。青蛙不能出界 2。青蛙要吃光所有食物。第一个目标青蛙必须看到并识别出边界的存在第二个目标要求青蛙的眼睛能进化到看到屏幕上的任一点。
Copy link
筑梦前行
筑梦前行4 months ago
目标远大,我辈学习之榜样!
Copy link
小仔
小仔4 months ago
太棒了,持续关注大佬
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
这个项目消停两天这一两周要集中精力完成jSqlBox的分布式事务。
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
手机收到了如果大家只是想临时私聊的可以加我微信yong99819981聊完删掉好友即可。如果有想加入开发团队或长期关注这个项目的可以留言加入"人工生命群"。
Copy link
妖孽
妖孽5 months ago
持续关注中
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
谢谢关注!但这个项目快不起来,一方面作者本人是个外行,另一方面它可能是走在了无人区(至少从这个外行的眼里看来),“外行”+“无人区”注定了它举步为艰,随时卡壳。 这个项目唯一的亮点可能就是作者本人坚信这条路能一直走到头的信心了。现在的神经网络研究要么信心不足,不觉得从模拟蚂蚁脑、青蛙脑可以一直走到模拟人脑。要么就是信心足过了头,连蚂蚁脑都没搞明白,就要上高大上的人脑模拟项目(欧洲人脑项目)。
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
随机联结只是演示了"会自主运动觅食“的微生物可以简单地通过随机进化中产生,但不能解释模式识别和记忆功能的产生。下面要开始另一种脑细胞分布模型的尝试了,可能要完全推翻目前随机联结这个架构,而且似乎更符合实际生物的脑结构,这就是网状结构:
打比方说目前如果一个眼睛有100个象素点分别对应A,B,C,D....等感光细胞,另外有上、下、左、右四个运动细胞。可以假设每个感光细胞收到光信号后,会象一个波源发生器一样向四周的脑细胞传递信号,越远的细胞收到的信号越弱,如果两个或多个感光细胞的信号同时到达远处的一个细胞,则形成波峰,如果多个波峰同时激活,这几个波峰从波的角度来说,可以看成是独立的信号源,于是又会在更远处形成波峰,于是不同形状的图形就会被大脑归类于一个个特点的波峰激活区,这就是模式识别的基本原理了。 一个波峰形成后会以反指数曲线形式消退,在此期间如果有个别波到达,会很容易再次激活,即使只是图像(或其它内、外信号)的局部信号,也可能使这个波峰激活到很高的值,这就是记忆的基本原理了。如果某个感觉细胞的输入转辗到达了运动细胞,可以说是一种天生的本能反射,如果这个本能反射链被加强或削弱,例如被脑内进食奖励区兴奋(多巴胺产生会加强最近的触突联接)、痛觉信号(可能产生强烈负信号),或是被脑内其它波峰的信号覆盖,那么这种后天形成的信号-运动反应,可以称为后天的条件反射。 对于电脑模拟来说,只需要构造一个模拟波形传播的网装结构即可,一个节点可以接受多个方向的波,也可以向多个方向发送波,这就要求它具备多个输入、输出触突(也可以是电脑虚拟触突),以及对应的奖惩调节机制即可,激活多的脑区,在下次遗传时把网格变异成更密一点就可以了,以体现用进废退。这就是下面要进行的工作的大概思路,这是一个整体化的解决方案。
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
与波的发散形成多个波峰相反,多个波峰激活会形成脑内的思维区成像(多个波峰激活会在原波源处成像,还有一种可能是在反侧镜像处成像)脑内的思维区就是人脑的CPU快速缓存区它永远不停地被周围的波干扰生成各种图像或声音等),思维区内容永不停止地在变幻,思维成像区驱动着其它脑区,反过来,其它脑区又在思维成像区形成新的图像,这就是大脑工作的流程,在做梦时这个流程更清晰,因为没有了外部信号输入,思维成像区永远不会是空白,所以大脑永远不会当机。
波峰的激活会在思维区成像,但是这个成像是模糊的,这就是为什么大脑中永远不能想象出一幅高清画面的根源(脑部变异者除外)。
现在的问题是,思维区是位于感光细胞区和大脑存贮细胞区之间的,还是之后? 换句话说,视觉光信号是先到达思维成像区神经元还是先到达波峰区神经元? 从波的成像象度来说,个人倾向于前者(因为镜像这个条件很难满足,它要求波峰位于同一个平面上),也就是说外部信号必须先经过思维成像区之后,再传递给波峰(大脑的存贮细胞)在回忆时波峰的信号必须原路逆向返回到思维成像区。这就需要与视觉、听觉信号相关的脑内神经元的信号必须是双向传播的。但我google了一下生物神经元只能单向传播信号如果是这样就只能通过两个相反方向的神经元来模拟一个双向传导功能这是个疑问。先把这个问题放下对于这个电脑模拟项目来说先考虑直接上双向因为目标是找食并不需要全盘照搬生物底层机制。
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
当然了这里的“波”只是个比喻实际编程时是不可能也没必要模拟波在360度所有角度上的传播的只能用n(可能少到1、2条)条放射线分布在一个小于180度的扇面上来近似代表波的传播路径甚至可以用"横5格竖2格"之类的网格比率来简化射线斜率的传播方向,两个射线的交点就是一个脑细胞存贮单元。而且可以用信号向右(水平方向的分量)传播表示波的扩张,向左表示波峰到原点的逆向信号传播。这适用于单维信号的输入和存贮,二维的(图像)输入还要再想想。
另外,神经元如果处在波的传播链中间,应该也具有波的叠加特性,即使一个神经元已被激活,当另一个信号到达时,它也应当具备将这个信号中继给下一级神经元的能力。 所以处于中点的神经元其饱和值很高(通过用进废退原则进化得来),处于信号末端的神经元饱和值低。
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
痛苦、愉悦感觉细胞本身也可以视作一个波源,简单说,可以视为图像的一个象素点,和视觉信号发生干涉,在大脑里形成波峰。于是每当看到特定的钉子、刀、针等图像时,这些波峰区被激活,信号再逆向传回到信号源后会激活痛苦成像区(或者说痛苦感受区)。 痛苦区激活可能会回忆到缩手区(缩手区是一个运动细胞,但同时也是一个波输出信号发生源),当这个过程持续足够长或这个回忆检索收集到的信号足够强,就有可能超过缩手区运动细胞的执行阀值,真的作出缩手运动。类似地,看到蛋糕图像会激活愉悦区,愉悦区可能会回忆到伸手区,当蛋糕足够大或在我面前晃动时间足够长时,蛋糕就被抢走了。蛋糕吃到嘴后,大脑会分泌多巴胺奖励所有最近活跃过的脑细胞,好让下次的抢蛋糕反射链发生得更流畅一点。
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
yeah满300赞了谢谢最后一位点赞的同学。
Copy link
萧萧雨声
萧萧雨声5 months ago
非常有创意的项目代码中使用的随机数是普通的伪随机数如果有必要可以考虑真随机数这里有个网站可以获取真随机数https://www.random.org
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
谢谢提醒,不过神经网络应该不在乎伪随机数还是真随机数的,因为从它的需求来看,伪还是真随机数起到的作用是一样的,因为它不象密码一样需要防着人家去破解,只是需要一个均匀分布的随机概率而已。
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
加了个新的眼睛用nxn点阵形式代表脑图也可以动态显示了。蝼蚁尚且贪生青蛙到了边界就不走了往生咒加上了。
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
找食效率太低,又改回到用连接数量代替权值这个逻辑,看起来舒服多了。权值这种人为设计的算法居然比不过随机试错,失败。
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
猜测:大脑的结构可能是一个分形结构,在宏观上具备的记忆、信号输入和模式识别、条件反射等功能和结构,在微观上也具有相似的结构,也就是说只需要设计出一套脑细胞排布算法就可以了,每一个低层的脑结构就是高一层脑结构的分形式复制,在活跃度高的节点上,分形式遗传变异复制发生的概率高(用进废退),最终形成一个复杂的树状脑结构。这个猜测的意义在于如果能够完成基本的青蛙脑的设计,完成基本的找食、分辨天敌(需要增加感光细胞)等功能,更复杂的如人脑就不用再去单独设计了,利用计算机的虚拟环境训练就可以自动让这个青蛙脑进化成更复杂的人脑了。算法是一样的,只是脑的总细胞数量和分形层数不一样而已。在蛋(Egg)里,只保存着一套算法,和一棵分形树的每个节点。打个比方来说,用最好的条件和环境来训练一群狗、一群猴子、一群恐龙,最终几十万年后它们都会进化成和人一样聪明,因为这些动物的受精卵里保存的脑的进化方案是一样的。
另外现在这个版本的找食效率不如4.12的提交这可能是因为权值虽然可以简化模型但悬殊巨大的权值可能抑制了新连接的建立正在调试将4.12的逻辑照抄到RandomConnectionGroup中去增加细胞数量弱化权值自动调整范围。等到引入记忆器官和利用上 Happy器官的奖励信号之后再说。目前这个青蛙的任务很明确1.遇到边界要掉头,而不是出界或顺着边界往下溜 2.发现并吃光Env中的所有食物。 第一个任务必须引入记忆功能,第二个任务必须进化出感光细胞非常多的眼睛,因为如果测试环境中只有一个食物和一个青蛙时,如果青蛙感光细胞很少就会根本看不到这个食物而饿死。
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
当然,如果食物太多,眼睛的感光细胞可能不会进化出很多,例如矿井里的有一种老鼠眼睛基本看不到,不是因为大自然觉得即然用不到眼睛,就让它退化吧,而是因为有了眼睛的老鼠需要消耗更多的食物,在生存竞争中被淘汰。所以环境决定了生物的形态,环境决定了脑的进化方向。
Copy link
1320504_fzwise
码瘾少年5 months ago
nice job这个想法我之前就想过随机才是王道再复杂的逻辑写出来的人工智能只是人思维的规律总结算不上智能
Copy link
xinyi
xinyi5 months ago
求加微信xx17610115570
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
报歉手机坏了,正在等网购的手机到,等拿到手再加你,顺便也会把微信号挂在"关注我"栏里面。这几天可以在这里发评论或私信,我每天都会登录码云看看的。
Copy link
天崖
天崖5 months ago
忍不住推荐一个视频https://www.bilibili.com/video/av54874176/。或者说是推荐这个up主。他的系列视频讲了一些神经网络和人工智能学习机制的科普我觉得讲得太棒了。而且里面关于“意识是客观现象”的观点与楼主不谋而合。
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
受教了才知道草履虫的纤毛能感觉到外界输入up主的生物知识很渊博。我是根据任务来假设生物必须具备某种信号处理能力而生物学家可以直接从内因来解释生物为什么能实现这个任务。
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
加了个“初学者入门介绍“方便Java零基础的人看源码。
Copy link
Master_H
Master_H5 months ago
厉害
Copy link
Jackchars
Jackchars5 months ago
看着就牛逼哄哄
Copy link
妖孽
妖孽5 months ago
大佬牛逼啊
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
微信号(yong99819981),但正在换手机,请过两天再加。这两天只是想聊天的请发在这里或私信。
Copy link
1489318_lnsooxd
LnsooXD5 months ago
怎么加入你?
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
开了个微信"人工生命群”可以在那聊。我没有QQ你也可以直接在这里评论或发issue、私信。
Copy link
1727136_sunziren
sunziren5 months ago
老弟你QQ多少我对你这个项目很感兴趣咱们应该有的聊的
Copy link
891570_jdkhome
jdkhome5 months ago
带我一个
Copy link
920504_drinkjava2
drinkjava2owner5 months ago
开了个微信"人工生命群”可以在那聊。我没有QQ你也可以直接在这里评论或发issue、私信。
Copy link
Copy URL
143517_vebai
/vebaia day ago
等机器代替人类的那天,那还要人何用?人有七情六欲,还要吃喝拉撒;人失去价值之后或许到那时掌控人工智能的少部分人将会对普通人进行大清理了
Copy URL
920504_drinkjava2
/drinkjava2ownera day ago
预测未来人工智能如何对待人类,这是一个关键话题,我的看法是无测预测,只能盼望将来的智能比人类更有理智和尊严,不会无缘故伤害人类。所以我们人类要以对待人类的态度对待人工智能开发,不要伤害他。问题是这只是我的看法,其它国家也许有人有不同的看法,也许他们的目的就是开发人工智能上站场,这会给人类带来巨大灾难。为了不让这发生,最好的办法就是我们自已在人工智能开发上先走一步,夺取话语权。
Copy URL
2189015_starrynightblue
/StarryNightBlue2 days ago
西部世界的感觉
Copy URL
632560_finch1
/Finch12 days ago
想法不错,我之前也有一样的想法,大概是模拟生物的所有行为。实际上科学家曾经也有直接模拟神经网络中每个神经元的想法,不过这显然是不现实的。
Copy URL
302533_huhangfei
/hgflydream2 days ago
支持创新
Copy URL
爱家
/select12 days ago
一开始我以为你在吹牛,后来发现是真的。。。。
Copy URL
Admin
/czymorg_admin2 days ago
牛B为啥不从一个小蝌蚪开始呢。
Copy URL
3449_simplecode
/simplecode2 days ago
作者是不是学生物的?
Copy URL
920504_drinkjava2
/drinkjava2ownera day ago
不是,如果有学生物的加入指导会有很大帮助,因为它本质上是模拟生物,只不过去除了一些生理功能,只关注脑结构。
Copy URL
125168_matols
/matols2 days ago
想法真好,程序推演。其实现在的所谓的人工智能也是一种意识形态。
Copy URL
920504_drinkjava2
/drinkjava2ownera day ago
因为意识只是表象所以Alpha狗这种围棋程序也可以说是某种意识活动现象只是它还不能表现出“自我意识”这种现象。
Copy URL
amoonhappy
/amoonhappy3 days ago
感觉有点走偏了兄弟。做虚拟世界让其中的“矩阵”进行变化,这是计算机能做到极致。
计算机只能用n维度的矩阵的变化模拟一个功能F。输入是x结果是y功能或者现象就是F(x)。
建议先从Python开始学习深度学习了解这个原理再看看现在的AI离强人工智能有多远。
顺便,所谓的记忆,在深度学习机器学习里已经有了,就是神经网络的模型权重数据
Copy URL
920504_drinkjava2
/drinkjava2owner3 days ago
一方面是我数学差,算法看不懂,另一方面也怕干拢思路,有意不去看。现在会算法的人太多了,也不缺我一个,感觉有点象侠客行里大家都识字,只有石破天不识字,在别人眼里的蝌蝌文,在石破天眼里就是一条一条的蝌蝌而已,别人都在讲算法,而凭我的能力只能研究一个个脑细胞了,试着把它们搭起来,能搭起来最好,搭不上就算是自误自乐吧,也不防碍别人。我觉得这样瞎琢磨也挻好的,也许稀里胡涂就进化出一只青蛙出来呢(我以前的观点是有些大脑逻辑是不能用简单的算法来描述的)? 如果哪天卡住了(例如现在发现没有记忆功能和模式识别功能),再去学习算法不迟,看看能不能找到思路。更何况我相信这条路大的方向应该是对的,从解剖和模拟蚂蚁、青蛙的脑着手,逐渐搭建更复杂的生命体,但没想到二十年过去了,走这条路的人并不多,甚至神经网络研究依然陷入误区(投入巨资开发自动驾驶、自动翻译这种不可能完成的任务,我在二十年前就预言过不可行),害得我一个纯外行也忍不住要下水了。老实说我并不擅长做研究,没钱没设备没精力,当个预言家或者说空想家更合适,问题是这个社会不搞点实际成果出来,空想家是没人理的,除非你是马云或李彦宏。
Copy URL
660624_garinhan
/garinhan2 days ago
算法相当于人为加了算法限制,写死了程序,作者需要的就是不可预测的结果,最好任何东西都不干预结果
Copy URL
920504_drinkjava2
/drinkjava2owner4 days ago
每个Group的同类脑细胞触突的权重是个重要参数利用生存竟争来自动调整权重值把这个最脏最累的活交给电脑就行了无须人为参与。
Copy URL
920504_drinkjava2
/drinkjava2owner17 days ago
这个项目暂停了下来是因为目前在做jSqlBox的分布式事务这个世界有点疯狂一个机械工程师要利用业余时间解决分布式事务结合分库分表问题这个问题有点复杂但是相比与构造Frog的大脑来说只能说是愉快的热身锻炼了。时间很少抽不出时间来搞编码只能打打字了。
目前Frog缺少记忆能力再多的循环次数、器官的数量对它的进化也没有帮助下面的编程思路大概是要实现"任意两个相邻细胞群的活跃,则新建一个新的细胞群,用来充当这两个细胞群之间的纽带“,这个机制可以实现记忆和模式识别两个功能。开始要吃内存了,细胞群是从内存中新建出来,而不象动物脑利用大量的冗余细胞转化来,细胞群本身不参与遗传,但是它占用的总内存空间这个重要参数会参与遗传进化。 原来的“CellGroup”改名为"Connection",用单个的连接(含强度、分布方式,正负)来代替一群连接细胞。Cennection不再参与遗传和进化原则上也不再采用随机分布(死了之后才知道那些是正确的,效率低)而是在每个Frog的生存周期里动态产生。它的产生只取决于两个细胞群时空上相邻的兴奋强度和方式由食物和痛觉器官来调节。视觉感光)细胞、痛觉(接触边界)、饥饿细胞、愉快细胞(进食后)、运动细胞这些特殊的细胞或功能依然称为器官(Organ),并且从下个版本开始,允许器官的数量、位置参与遗传和进化。例如,目前视觉功能是由单个器官组成,内含四个感光细胞,以后会改成感光区(即视网膜)大小是桓定的,但是内部的感光细胞(器官)数量、位置会参与遗传进化。
Copy URL
920504_drinkjava2
/drinkjava2owner7 days ago
编写过程中发现思路又跑偏了“细胞群是从内存中新建出来”这句话不对不是在青蛙活动时动态创建脑细胞而是每当一个Frog新建出来时由CellGroup负责排列一组固定数量的细胞群在一个矩形区内矩形区的大小可以大到整个脑也可以小到单个细胞。每个Frog的细胞数量一旦创建就不再变化了。变化的是CellGroup本身CellGroup就象一个播种机一旦播好种就撒手不管了。Egg里存放着一组CellGroupCellGroup可以参与遗传、变异分裂、尺寸、参数变化所有的算法都可以抽象成一类CellGroup算法本身只负责细胞的排列不负责细胞的活动。Egg负责播种机的遗传和进化。
目前“随机连接两点”这种逻辑可以说是CellGroup的一个子类是一种最简单的算法。
另外给大自然点个赞,在没有记忆单元的情况下,它随机分布、自然淘汰的结果是自动选出了最合理的运动方式 "先往一个方向跑,如果有食物在身边就拐个弯"。虽然是个模拟的生命,但它这个逻辑如果发生在原始真实海洋里,是有可能几年之内淘汰所有不会运动、或是只会往一个方向运动的原始微生物,充斥整个大海的。
Copy URL
yzyGitee
/yzyGitee19 days ago
自我意识和智能是两种东西有智能不一定有意识。没有意识的人工智能也可以完成复杂的任务。比如现在AI可以打DOTA谷歌在研究可以同声传译的AI。 李理认为“意识不过是类似于DQN里的Replay Buffer并无特殊之处”。我认为要发展 强人工智能 是需要意识的,至少要有个生存的动机。足够强大之后就可以自我修改、自我进化。
我去年在十日内观的时候,脑子里胡思乱想,我产生一个想法,用南传佛教对心的解释的理论(受、想、行、识是身心五蕴当中的心的部分)来构建人工智能的核心。因为佛教的观点认为自由意志并不存在,人的身心反应都是自动完成的,“自我”是个幻觉。但是这要修行到很高的境界才能实证到五蕴是怎样运转的。但是可以借鉴他的理论。
Copy URL
920504_drinkjava2
/drinkjava2owner19 days ago
意识就是一种现象,只要实现了类似人脑、动物脑相似的逻辑,外在表现相似就可以了,因为"证明"意识存在的唯一方法就是从它的外在表现判断,也就是说"表象就等同意识"。佛教"无我"的观点和这个很相似。但现代社会不讲佛教糟粕太多。正如我试图简单地从0、1组成的电脑代码里来演示生命现象是可以人为模拟出来的生命现象复杂到很高的程度时就会表现出非常复杂的“自我意识现象”。
李理认为“意识并无特殊之处”是正确的但Google研究"同声传译"这个目标是错误的。我在20年前就提出“人类应把构造生命体作为最迫切的任务并投入大量人力、物力”因为构造生命体是所有问题的通解"同声传译"如果成功达到人的翻译水平,说明它表现出了意识现象,实际上也就实现了构造生命体,实际上也就能解决所有人类其它问题。所以应该放下所有具体研究(如自动翻译、自动架驶等),集中精力专攻人工生命,而这可以从模拟草履虫、蚂蚁、青蛙的大脑开始。
Copy URL
yzyGitee
/yzyGitee18 days ago
你这是要推动奇点的到来。创造可以自我升级的通用人工智能是一个伟大的目标,是一切的终结,也是一切的开始。
但是你在虚拟的环境中训练AI那么这个AI也要依赖于这个虚拟的环境难道你要先做一个完全的虚拟现实世界吗。
但是你这个项目足够有趣。元胞自动机在我上学的时候(大约十年前)了解到的。去年的时候我在张江教授的视频里了解到创立人工生命学科人是受到生命游戏的启发。你这个也有点像是生命游戏。
我有个想法可以先搞一个像vector那样的家庭陪伴机器人这在未来一定很有需求。这个机器人在智能上要比vector强大的多当然现在在商业上还无法实现消费级产品的普及。Anki前不久才关门。
你要创造的这个 强人工智能 一定要与真实的环境接触否则就只是虚拟环境里的一个游戏。或者可以让AI接触网络可以自由的在网络空间里游荡、繁殖。不过这两个就不是一个东西了一个是实体的机器人一个是赛博空间的代码不过以后也许可以融合我现在想这些还是有点早了。
Copy URL
920504_drinkjava2
/drinkjava2owner17 days ago
目前不掺入任何"有用"的目的。在模拟生命现象时已经做了简化,用能量的多少来判断下蛋权,而不是用寿命、互相吞食等方式。因为要集中精力在大脑的结构,这是重点。
不需要构建完全的虚拟现实世界,因为即使很简单的虚拟世界,也可以证实它能表现出复杂的智能,这就够了。到目前为止,只是简单的几行代码演示了找食现象,就让人感觉它"活"了。实际上棋类也是一种虚拟世界,但是它的边界更明确,规则也很少。
“与真实的环境接触”是必然的也是它的最终目的。这也是为什么强调Frog中不能有硬编码的存在因为硬编码会破坏它的进化和学习机制在开放式的真实环境中所有硬编码都是bug。例如如果一个自动架驶汽车中存在一个"看到前方右边有停牌就要停"的硬编码规则那么在真实世界中肯定有人会利用这个bug举个假停牌把车子骗停然后抢劫),然后程序员一看不对,又把硬编码规则改成“如果看到小偷模样的人站在停牌边就不停"。。。然后就没完没了,程序越改越复杂,最后以失败告终。
Copy URL
wangchl
/qq131942649326 days ago
博主能分享一下你的逻辑资料或者笔记吗感觉好牛X想参考参考
Copy URL
920504_drinkjava2
/drinkjava2owner25 days ago
没什么资料或逻辑性的东西,都在这里了。我是民科一枚,跟着感觉走,想到什么就记下来。神经网络强调实践,理论吹上天也没什么用。最近才开始编程,可以说神经网络还没入门。很久以前做过一个造人论坛, 都是一些杂乱的想法,你要有兴趣也可以看一看。
Copy URL
920504_drinkjava2
/drinkjava2owner28 days ago
关于记忆和逻辑能力:
记忆是建立在模式识别基础上,就是反复发生的兴奋最后都会导致产生一个新的特定区域(或器官)的兴奋,例如方形、圆形反复在视网膜上出现,就会激活对应"方"、"圆"的神经兴奋区,初生的婴儿刚看到方形时,这个“方”形的区域还没有形成,但多出现几次,就会产生了,这个过程不存在逻辑性,可以用现有的神经网络模式识别算法解释。模式识别是记忆的基础。
记忆能力(回忆)和逻辑能力本质上是一样的,就是时间、空间上有关联的两个区域(器官)兴奋,必然会产生新的神经元连接将这两个区联系在一起。如果这个过程伴随着痛苦输入或快乐区兴奋,这个联系的方式(正、负和强度将与普通的联系大不相同。在生物脑里实现方式是通过高密度的空白神经元转化为触突间有联系的神经元实现在电脑里可以作弊只要两个器官区域发生时间顺序上的兴奋就可以创造出一条新的神经联系给它们。记忆和逻辑能力看起来很相像本质上是一样的区别在于逻辑能力与输出兴奋区的联系多它更直接地影响到Frog的运动。
Copy URL
920504_drinkjava2
/drinkjava2owner28 days ago
最高等的逻辑能力,象人脑或高等动物脑一样,有一块思维区,象一张白纸一样可以生成虚拟画面(或声音),这个虚拟画面,在清醒时被称为"思考区",在做梦时,被称为“虚拟现实”。这个虚拟画面相当于人脑虚拟的输出、输入器官,作为输入器官,它起的作用与眼睛类似,在做梦时就完全取代了眼睛的输入功能。作为输出器官,人类没什么贴切比喻的。倒是海豚据说可以将头脑中的景象用超声波发给第三方,海豚的这种能力相当于将头脑中虚拟的电影画面传递出来。
Copy URL
920504_drinkjava2
/drinkjava2owner28 days ago
自说自话了一番,然后发现“器官”-“联系”这种模式是不成立的,因为所谓的“器官”,除了天生的感觉、输出区外,大多都是后天形成的,用“兴奋区”这个词来形容更准确,而且它与眼睛的关联无比密切,可以说整个大脑的工作都围绕着眼睛(还有耳朵)产生的后天兴奋区工作。所以建立一个整体式的脑模型更合理,要一步到位。而不是建立一个个“孤岛器官”+"联系"这种模式,因为没有眼睛,哪来的这些“孤岛器官”? 至于虚拟思维区,也可以看成是眼睛的脑内缓存区,与眼的关系更是密切,(很多时候思考需要打草稿画出来,就是因为能帮助这个虚拟思维区建立更清晰的影像。) 所以要建立以眼为中心的神经网模型。
兴奋区的产生很随意,只要多个兴奋区同时影响到一个空白区,则这个空白区就会变成一个新的兴奋区,兴奋区如果长时间不刷新,则又会退化成空白区(神经元再次激活需要更多的能量), 这个机制可以同时解释模式识别和记忆的原理,至于逻辑功能,则由兴奋区之间的联系来解释。
器官可以遗传,像眼、耳、痛觉、饥饿区都属于器官,器官数量、器官内的细胞数量、网络结构规则可以遗传,器官之间天生的神经元联系(本能的条件反射)也可以遗传。但是,脑内的兴奋区是不可以遗传的,因为兴奋区是后天动态形成的。
Copy URL
920504_drinkjava2
/drinkjava2owner28 days ago
发现随机生成的神经连接全都落到器官上了,野外的神经连接一个也没成活。与其如此,干脆下面的逻辑改成随机生成的神经连接只允许两头落在器官上,以加快进化速度。 以后的重点是连接和器官,器官可以参考算法。连接的形式可以考虑平均分布、随机分布、局部分布、等分分布、全、半镜象分布、旋转分布、负连接(连接会产生负信号抑制被连接的神经元兴奋等等反正不合理的都会被自然淘汰程序里只管往里面塞入各种垃圾、各种可能性最后活着出来的Frog肯定是从中间选出最合理搭配的那只。
昨天儿子生日,说好给他买个锤子(哑铃)锻炼身体的结果买了个锤子。作为补偿把这只青蛙命名为Sam作为他的生日礼物现在不告诉他。希望将来的某一天两只Sam能在一起愉快地聊天。
Copy URL
WJ
/wangjian1013a month ago
感觉很厉害除了java还需要什么别的技术吗
Copy URL
920504_drinkjava2
/drinkjava2ownera month ago
就是纯Java。需安装Java8, 还有Maven好让它跑起来(run.bat)。
Copy URL
首页
/z1653775774a month ago
其实运行下来发现能产生的智能太有限了,没有敌人,应该有肉食性敌人并且敌人也可以进化,然后青蛙也能有反击手段之类的,复杂点的条件对进化有利吧,这样运行也只是比谁更会吃,变异作用就不大了
Copy URL
920504_drinkjava2
/drinkjava2ownera month ago
万事开头难,“一步一步来”很重要。目前它的内部缺少记忆单元和逻辑判断单元,只有将这两类单元作为器官加入参与用进废退、自然汰淘,才有可能随着环境的进化,脑器官会自动变得越来越大,越来越复杂。目前过早地加大环境复杂度就象先头说的"如果把一群青蛙扔到猴子的模拟环境中,则所有青蛙都会被自然淘汰掉,项目就无法进行下去了"。正在研究如何加入这两类单元。虚拟环境的进化很重要,但内因(脑结构)更重要。如果你有兴趣,可以改一下眼睛的数量(Egg.java的最后几行),可以发现无论眼睛有几个,它的智能程度都差不多,这是它的内因决定的,因为它没有记忆和判断器官,再多的眼睛、再复杂的环境、再多的运行次数也对它的进化也没有帮助,因为这个程序目前没有“自动产生新器官或新的神经元联系方式”这个逻辑。
顺便说一下所有记忆、判断以及模式识别单元都不能出现If-Then 这类程序硬编码,而必须用神经元联系的方式模拟出来。
我梦想哪一天一旦所有器官都加上了就不用再继续编码了小小的DNA里就藏着这个逻辑)Frog的大脑会自动随着环境的复杂度进化(象婴儿一样,从只有吃奶反射进化到有自我意识表现。婴儿如果每天只给它奶吃,那么他长到老也只会干一件事:吃奶)。
Copy URL
kzquu
/kzquua month ago
希望作者早日功成圆满,
等那天我要把意识放到程序里去,然后嘿嘿嘿嘿 。。。
Copy URL
920504_drinkjava2
/drinkjava2ownera month ago
谢谢! 最近卡住了,需要整理一下自已的思路,并学习一下算法。目前处在分岐点,到底是恁感觉往前摸,还是学习现成的算法,将一个个算法做为器官引入,随机的分布的神经元只在器官之间分布作为联系。
其实这个项目的意义之一就是要证明"意识不存在,意识是一种现象而已",可以说,"把意识放到程序里"已经实现了,或者说,永远也不可能实现,因为意识是不存在的。目前这个程序的表现,比预想中的要好一些,完全随机分布的神经元,自然淘汰的结果是表现出了一定的智能现象。
Copy URL
882772_liinsert
/liinserta month ago
我觉的新算法可以当一个新的熵引入,当发展到一定程度时,环境熵值逼迫生物进行的新的熵值诞生,我看了动图效果,环境熵值为变少的食物,加入“眼睛”熵值导致新诞生的生物有了更多适应性。我的理解为意识可能不存在,但是可能是某个生物本性导致我们做出了适应环境熵的选择,表现为意识。在此例中我认为可以将“自私性”作为生物本能。为了更好的适应环境熵值的变化,生物表现出了新熵值的突变。
Copy URL
920504_drinkjava2
/drinkjava2ownera month ago
嗯,人脑的运动转化为程序代码,包括这个虚拟环境,这算是一个熵的转移吧。这个程序系统本身倒是封闭的,在程序开始运行的一刻起,熵值就恒定了。所以虚拟环境的进化也很重要,要随着脑结构的进展不断调整,不断提高整个系统的熵值,直到让这个系统与真实世界接触。
Copy URL
920504_drinkjava2
/drinkjava2ownera month ago
神经元的连接方式除了一对一的连接之外,还有三种经典方式,即发散式、聚合式、环式等,使得神经冲动能够以各种方式传导。
发散式
在发散式连接中,一个神经元的轴突通过它的末梢分支与许多神经元(胞体或树突)发生突触联系,这种联系使一个神经元的活动有可能引起许多神经元的同时性兴奋或抑制。
聚合式
在聚合式连接中,许多神经元的神经末梢共同与一个神经元发生突触联系。这样,同一个神经元可以接收许多其他神经元的影响,这些神经元可能都是抑制的,也可能都是兴奋的,或者一部分是抑制的,一部分是兴奋的。他们聚合起来共同决定突触后神经元的状态。这表现了神经兴奋在空间和时间上的整合作用。
环式
在环式连接中,一个神经元发出的神经冲动经过几个中间神经元,又回到原发冲动的神经元,它使神经元在这个回路内可以往返持续一段时间。 摘自: https://baike.baidu.com/item/神经回路
Copy URL
920504_drinkjava2
/drinkjava2ownera month ago
自动驾驶和机器翻译类似,都是不可能完成的目标,或者说只能永远接近,但不能达到完美,如果认不清这一点是要吃大苦头的。因为反证,如果能达到象人一样完美驾驶,例如有小偷举个停牌,打算抢劫,这时候如果车子象人一样判断出这是个假停牌,必须冲过去,那么,恭喜,这个车子已经聪明得象人一样了,它应该具有人权了,如此聪明的“车人”干别的事,比如说设计建筑,肯定也比人历害,也就是说从社会地位上来说,通常是应该人来给这个车子当司机,而不是车子给人来当司机了。
Copy URL
920504_drinkjava2
/drinkjava2owner2 months ago
梦里也会学习,这句话是一点也不假的。
一分钟前我正在睡觉,刚被人吵醒,所以梦境很清楚,虽然只记得后半段。梦很荒诞,有多荒诞?场景,发现一个蚂蚁窝,大蚂蚁和一群甲虫窝在里面, 甲虫受到攻击会从肚里里裂出一排绿色洋辣子样的虫然后这些虫会参与投票然后电视上正在播放这次投票有许多非法票但是不用担心这些虫没有ID所以这些假票很容易被排除。。后来我成了一个吊车工人研究了怎么系好安全带然后被往上吊然后公司要买台机器和其它公司发生了官司一群人我作为合同签定者是要到场的其它人坐在我的下方我一个人就这么坐在吊着的椅子里到了官司现场。然后就开始扯皮....,其中我发言,需要表达一个意思,我只是临时租用对方的叉车,这句话需要用到两个英语单词“叉车”和"变压器",我想了一会,想到了并说出来,然后继续扯皮...正在扯皮时公司买的设备到了一群小伙子扛着机器从一个长长的斜坡上把机器往平台上抬机器长得象是一段楼梯大约30个搬运工抬上去然后机器安好了机器又成了正常的数控机床模样安放在大约30x30米离地1.5米高的铁平台上(象钻井平台)我心想这平台太大了于是平台变成了大约10x10米然后被吵醒了。
这个梦的重点是什么?别的不说,至少复习了“叉车”和"变压器"两个英语单词,也就是说,梦里面英语能力得到了加强。
梦就是虚拟现实,脑的思维能力和清醒时是类似的,清醒时脑海里的虚拟现实比较模糊,也比较合逻辑,梦里的虚拟景象比较清晰,但不合逻辑,想到什么就造出什么来。
Copy URL
wslianbo
/lianbo2 months ago
感觉好屌的样子,看不懂,只能默默点个赞
Copy URL
920504_drinkjava2
/drinkjava2owner2 months ago
谢谢!其实我也是个门外汉,空想和编程完全是两码事,空想能从开头(单细胞诞生)一直想象到结尾(人脑出现),编程则只能走一步看一步了,码不准就卡在哪里动不了了。
Copy URL
920504_drinkjava2
/drinkjava2owner2 months ago
一文看懂25个神经网络模型: https://blog.csdn.net/qq_35082030/article/details/73368962 当然了,我是看不懂的,不明觉历,需要脱产学习去了。无知不是好事,想象力不能代替学习,与其苦思,不如拿来主义,这些现成的模型是宝贵的财富,而且有些借签了生物脑的结构。大自然在人脑中可能已经自然存在了这些模型,但是它是怎么生成的,进化步骤是怎样的,很难说清楚,为了节省生物学、考古学家的精力,我们可以试着用这些算法模型去拼凑出大脑,这是一个逆向工程,难度太大,所以先从简单的细菌、昆虫、青蛙这种脑结构开始,即好拼,也很容易检验成果。
一个设想将这25个模型(或先选其中几个)当作器官一锅烩加进来,数量、位置、大小、以及每个器官的内部神经元规模都参与遗传、变异、用进废退自然竟争,如果有用,自然选择自然会留下有用的器官。每个器官之间的联系可以考虑用漫天撒网的方式随机分布神经元来联系。可以用黑盒子方式直接引用算法(这是允许的,只要没有打破变异、遗传原则)也可以用原生frog脑细胞来直接实现这些模型个人倾向后者。
Copy URL
920504_drinkjava2
/drinkjava2owner2 months ago
今天早上上班去,门口一只兔子抬起头看我一眼,继续吃它的草。我琢磨这家伙在想啥捏,低头,吃草,看我,这动作难度太高了,我可实现不了。立马感觉自已的智商不如一只兔子。
Copy URL
山神
/mountaindeity2 months ago
默默点个赞,支持作者
Copy URL
920504_drinkjava2
/drinkjava2owner2 months ago
谢谢! 也顺便谢谢其它默默点个赞就走的同学们。
Copy URL
首页
/z16537757742 months ago
运行出错找不到或无法加载类环境变量也没问题啊…小白不太懂方便发布个编译好的exe吗
Copy URL
920504_drinkjava2
/drinkjava2owner2 months ago
好象忘了说运行环境了下次更新时要添上。需要安装JDK8, MAVEN, GIT,并设定好环境变量。然后用GIT clone https://gitee.com/drinkjava2/frog把它当下来。 然后双击run.bat就可以运行了。 exe方式不可取不安全也太落后了。
Copy URL
920504_drinkjava2
/drinkjava2owner2 months ago
到目前为止,自然选择的威力已经体现出来了,但缺点也很明显,就是不够智能。下面要进行脑结构更多的人为设计了。
目前主要问题利用自然选择从饥饿区及视觉区直接短路到运动区不具备智能性。要实现1 记忆 2条件反射的形成逻辑功能) 这两个主要功能就必须让Frog的脑结构不能固化而是每一轮中都动态生成也就是每个青蛙从诞生到死亡都要经历一个脑结构从无到有建立的过程而不是简单地从上一代继承下一个固定结构。另外目前这种漫天散网随机分布神经元的方式即不高效也不合理(跨度太远的神经元在生物体和并行硬件上都很难实现,不合理),初步设想要设计成各个器官只激活附近的空白神经元,空白神经元激活后再激活更远的神经元,直到从输入到输出器官形成链路。脑之间充满了大量的空白神经元以供记忆(模式识别)和传导作用,可以称这些空白神经元为“以太神经元”。模式识别就是空白神经元越传越远的过程中开始分化成远处一个个特定小区的活跃,例如"我"对应一个声波区,"们"对应一个声波区,"我们"又对应别一个声波区。
另外这两天想到一个重要结论:痛觉是具体的神经元的强烈的兴奋传导,而(奖励)快感只是化学物质的分泌,可以影响一大片神经元,但强度很低,所以快感要多次重复才能加强(条件反射),痛苦却强烈而快速地传播,打断经过路径上所有正常的神经链路。
Copy URL
920504_drinkjava2
/drinkjava2owner2 months ago
两个近期内活跃的神经元不管有没有奖励只要经常地有规律出现必然发生关联这是神经网络的基本功能与进食奖励无关。进食奖励发生在Try-DO决策之后决定Try到Do之间的(正或负)关联强度。脑工作在串作模式要引入一个类似CPU的逻辑器官。
Copy URL
920504_drinkjava2
/drinkjava2owner2 months ago
眼睛加上了自然选择也把眼睛给选中了但也只比随机运动好一点点而已它直接把眼睛和运动区短路了。看到食物和向它走过去完全是两个概念Frog同时在两个方向看到食物就不知道怎么处理了(不能有硬编码)。狗看到食物会向它走过去,这是一种复杂的、后天形成的条件反射,必须有进食奖励才能建立,而进食奖励机制目前还没引入,只靠自然淘汰。自然淘汰是上帝的审判,死后才进行,而条件反射必须在青蛙还活着时就要建立。人类的进食奖励通过多巴胺将两个近期内活跃的触突绑定,电脑可以将多巴胺作为一种器官引入,多巴胺器官的数量、位置也允许放在蛋里去进化。
Copy URL
小李子
/12861302932 months ago
一直默默的关注,给你点个赞
Copy URL
920504_drinkjava2
/drinkjava2owner2 months ago
谢谢!
Copy URL
920504_drinkjava2
/drinkjava2owner3 months ago
加入只保留激活过的神经元、两个蛋相加加成一个蛋(模拟受精卵)功能。眼睛还没搞,逻辑倒越来越复杂。
下面要开始加眼睛,短期目标:
1.根据周围食物的出现,调整运动方向("饥饿->随机运动"这种天生本身反射被"看到食物->随机运动->进食奖励===>看到食物->向食物运动"这种后天条件反射代替),不饥饿也要进食,以获取进食奖励(快感),因为是虚拟生命,撑不死,可以一直吃啊吃。
2.避开障碍物,等它出现眼睛后,看到看到屏幕上出现正方形要躲开,要引入模式识别算法了,而且要通过自然选择实现算法,而不是通过硬编码的方式,虽然只需要认识一个正方形,但也算是模式识别了。负反馈(痛觉惩罚条件反射)也要引入了。
Copy URL
920504_drinkjava2
/drinkjava2owner3 months ago
加视觉之前,先做两个事:
1,加一个显示脑结构的图,分别用不同颜色的方框表示视觉区、饥饿区、进食奖励区和运动区(已提交)
2.删除随机运动硬编码改成由hungry感觉区驱动随机运动条件反射已提交
从脑图上可以清楚地看到随机变异、自然淘汰、以及足够多的个体数量这几个条件结合下就有可能自动锁定住运动区。意识的起源并不神秘根据混沌原理三个变量互相影响下整个系统就是不可预测的而生物体的脑细胞又何止三个人脑有100亿个神经元这个复杂的系统表现出复杂的适应和改造自然的意识行为毫不奇怪。
Copy URL
920504_drinkjava2
/drinkjava2owner3 months ago
如果饿了(energy<10000),且神经元的输入区位于hungry感觉区,则该神经元的输出激活,如果激活区刚好位于运动区,则Frog移动。这是最原始的运动,将来这个运动会被后天形成的"视觉-运动-进食"这种条件反射抑制,但是,如果没有运动,后天的条件反射也无从谈起,所以说先天形成的反射是后天的条件反射形成的基础。
Copy URL
青崖白鹿
/qiubaicxy3 months ago
目前没接触过人工智能,
Copy URL
449029_link2t
/link2t3 months ago
规模太小。复杂度太小。产生不出多少智能。受限的环境,只能产生受限的智能。
Copy URL
920504_drinkjava2
/drinkjava2owner3 months ago
完全同意,这就是我说的"将所有研究神经网络的资金人力全部转到这个方向。。。",如果能有一台超级计算机给我当玩具就太幸福了。但在此之前,我得证明这个项目在小型电脑上的可行性,取得一定的研究成果(表现出复杂的智能现象)才能取得人们的信任啊。
Copy URL
449029_link2t
/link2t3 months ago
openAI 项目里 有三维仿真环境。带关节的人类模型,四足机器人模型。迷宫等等。可以试试在那个项目上扩展。据说最近 openAI 搞出 自主探索AI,行为比较有效率。
Copy URL
920504_drinkjava2
/drinkjava2owner3 months ago
谢谢提供外部资源,但Frog的思路和openAI不一样,它不需要了解算法,完全模拟生物脑的诞生进化过程来让电脑自动生成脑结构。如果Frog脑结构本身出现了固化的代码,那说明项目出了bug,需要改正。从算法着手还是从进化着手是两个方向。当然它们之间是可以有交集的,进化可以直接引用算法的成果,将算法当成它的一个输入输出器官,实现生物脑-代码的结合,或是在进化时有意促进大脑向算法进化,算法也可以借签生物脑的原理进行改进。但是因为算法比较复杂,我水平低,理解不了,而且算法与生物脑冲突(算法不具备自改进功能),所以目前先谢绝一切外部算法,一步一步走下去,看看依照进化思路试下去,最终会走到哪一步。理论上来说,用进化的方式,只要电脑够快,总有一天能实现造人的目的,因为它的总体思路是模拟大自然进行优胜劣汰,而人类又比大自然聪明,可以有目的的设计各种方案加速这个优胜劣汰过程,例如,生物眼睛的诞生,可能需要上亿年的进化,但在我手上,可能只需要几周时间就可以模拟出来了。需要超级计算机主要目的不是模拟环境,而是因为在项目后期神经元数量太多,会超出家用电脑的模拟能力。
其实人工智能的前景和危险我在二十年前就提出来了,还曾专门做了个网站宣传。可惜它的进展比我想象的要慢得多。作为一个预言家,最大的尴尬不是预言错了,也不是必须活到够老,而是要亲自上阵去实现自已的预言。研究造人,不是为了造人而造人,而是为了掌握机器人权法的话语权,如果机器人权法没出来之前,有自我意识的机器人提前诞生,甚至被送上战场,那将是整个人类的悲哀。
Copy URL
920504_drinkjava2
/drinkjava2owner3 months ago
人类需要机器的一个promise,如果机器有自尊的话,是不会打破这个承诺的,但前提是人类还没有伤害过机器人。
Copy URL
449029_link2t
/link2t21 hours ago
openAI 项目里 有三维仿真环境。openAI 项目里 有三维仿真环境。.....就像我前面说的。受限的环境,只能产生受限的智能。,你需要一个复杂的 仿真环境。不然 生产不出多少智能。做个类比:openAI的仿真环境 好比是 高等数学世界。你的 实验环境 是四则运算世界。现实世界估计是 量子学世界。环境复杂度不同,所能产生的智能 存在不同的上限。
Copy URL
449029_link2t
/link2t21 hours ago
再比如说,实验环境 内的生命,没有手。如何才能进化出 手拿工具的行为?永远不能。,又比如二维环境里 生命有几条 触须(手),能够“旋转”工具,却永远做不到 “翻转”工具这个行为。因为二维世界里没有“翻转”。
Copy URL
Once疯子
/chg5229750153 months ago
作者,我想加入这个项目。你这个项目的目标也是我一直想要做的。不知道加入需要哪些条件?
Copy URL
920504_drinkjava2
/drinkjava2owner3 months ago
没有条件,但是有明确的任务,这个项目是由一个接一个的任务推动的,有兴趣的可以一起来完成。目前下一个任务是激活它的视觉区,也就是说食物如果位于它的附近,能够激活它的视觉区,即脑内坐标0,0附近,半径530(暂定)个像素点内的神经元的input,并且如果如果移动方向、进食、视觉发生在短暂的一段时期,进食奖励将加强视觉驱动运动神经元的输出触突(outputs)的条件反射。谁先完成这个任务,提交pull request即可,这几天,我也一直在思考这个问题。关键是不能有硬编码,视觉到运动神经元的反射形成,是由大量的随机神经元分布、进化、淘汰而自然形成的,并且可能会由一群中间神经元达成。如果这个目标能完成,就是一个非常了不起的成就。会主动觅食的Frog当然会在生存竟争中胜出。 当这个目标完成后,我们再考虑一下个目标如避开障碍物等...
Copy URL
920504_drinkjava2
/drinkjava2owner3 months ago
这一步是很关键的模拟眼睛的诞生。从它要完成的目标来看,这个由自然淘汰、竟争中生成的眼睛只能区分方向、远近,暂时不能区分形状。因为可以用反推法,即使区分出了形状,对它捕食也毫无帮助,所以区分形装这个能力还不会在竟争中胜出。
Copy URL
zxulong
/zxulong3 months ago
非常同意你的观点"意识不是一种存在,而不是一种现象",你这个说法应该是广义的定义,狭义上而讲,意识是一种自我映射,说白了就是大脑自己制造的一种幻象。
还有我认为意识是一种动态的状态,应该是连续的,持续的,电影里上传意识,或者把自己意识复制到克隆人里,从复制的一刻,就已经是两个实例,两个意识了,即使他们复制那一刻很相似,之后就是两套系统了。
对你的项目非常感兴趣,会研究下,而且以后希望有机会参加你的项目
Copy URL
920504_drinkjava2
/drinkjava2owner3 months ago
欢迎!关于复制意识,你的说法和我在96年想到的有点类似,见 https://zhangrex.neocities.org/xy.htm 最底下关于生命树等幻想
Copy URL
dwing
/dwing3 months ago
受此项目启发, 我觉得我可以只实现质子,中子,电子等基本粒子的特性, 然后模拟出一个宇宙, 至于生命就更不在话下了 ( ̄▽ ̄)
Copy URL
Once疯子
/chg5229750153 months ago
你说的很对
Copy URL
Colin
/chlk1233 months ago
有点意思
Copy URL
660624_garinhan
/garinhan4 months ago
兄嘚,你的脑洞不是一般的大,挺好
Copy URL
喜欢自在
/lshfong_admin4 months ago
生命的起源不是从眼睛的开始的,而且现有图像识别技术和GPU运算能力没办法突破实现眼睛构造
Copy URL
920504_drinkjava2
/drinkjava2owner4 months ago
神经网络对于所有输入都一视同仁,触觉、听觉、气味、视觉等,只要它激活脑中的某片神经元,它就能处理。但是对我这个半吊子程序员来说,视觉是最简单的输入设备,最有利于编程,其它的味觉、听觉、触觉要转化为对应神经元的兴奋,用家用电脑和我的编程水平是很难做到的。实际上眼睛有没有不是关键,详见外设猜想,一个叫"海伦"的女孩,又聋又瞎,按理来说,让她理解这个世界几乎是不可能的,但经过训练,她成了一个作家。从这个例子可以看出,让一个具有智能体脑神经物质基础的系统理解这个社会,表现出“我”的意识现象,并不一定要看见和听见这个世界,也就是说,不需要给它很多外设,至于外设最少可以少到什么地步,那又是另一个问题了——也许,只需要海伦的一根手指就可以了。
Copy URL
喜欢自在
/lshfong_admin4 months ago
是的,生命的形式是从简单到复杂,从低级到高级的过程,不同的的环境会孕育出不同的生命形式,很多生命其实是没有视觉系统的,再升华一点,生命的肉体其实都是多余的,不过已现有人类的视觉来看,还不能脱离思想+肉体的生命形式
Copy URL
920504_drinkjava2
/drinkjava2owner4 months ago
偷懒一下,两个眼睛太复杂了,先一个眼睛好了,启动上帝模式作个弊,眼睛看到的不是以青蛙的视角看到的极坐标图像,而是直接用2D地图上代表食物的象素点激活青蛙脑部对应视觉区的神经元,远处的食物信号激活概率低一点。 青蛙身体形状也作个弊,用青蛙图形表示,但是青蛙图形本身不参与实验,也就是说青蛙自已是看不到自已的,只能看到食物。实验的第一步是要筛选出一批能够自主进食的青蛙。不能自主进食的青蛙,也就是说只会随机运动的青蛙被淘汰掉。嘴巴不用画出来,当青蛙的坐标与食物重合时,食物被删除,同时青蛙的某个脑细胞被激活,表示感觉到了吃。至于吃应该伴随着一个正反馈作为奖励,并强化视觉->运动之间的条件反射,这个就交给大自然了。重复上万次,直到神经网络变异产生出一批能够看到食物就向它运动的青蛙,就成功了。至于一群青蛙互相能看见,会互相争食物(如果已经有别的青蛙向食物运动且距离更近,则放弃),是以后的实验内容。
Copy URL
920504_drinkjava2
/drinkjava2owner4 months ago
已经开始有点眉目了,基因的设计(即Frog的物理结构及脑的逻辑结构生成算法的静态描述)是重点,分为两大部分,身体部分和脑部分。
身体部分因为是虚拟环境暂时先不考虑允许身体的物理进化这块一律给它们两个眼睛8个运动状态左转右转吃)和两个感觉器官(happysad)就行了,身体的形装为正方形就行了,眼睛放在正方形一边的两点上,眼睛用小圆点表示,腿和嘴就不用画出来了。如果有兴趣的话,今后身体的物理进化也是一个有意思的实验,可以模拟一下为什么生命体会进化成两个眼睛而不是多个眼睛。
脑部分: 很简单用区x数量+坐标来描述就可以了,区用平面位置表达就可以了,因为触突是允许跨区的,所以和三维结构在逻辑上是等同的。 有多少个大区,每个大区在脑的相对位置,每个大区里有多少个小区,每个小区在大区里的相对位置,每个小区里有多少数量的同类脑细胞(脑细胞种类很多,有些是存贮用,有些是传输用,有些是兼而有之......),这些同类脑细胞的传入传出触突长度和数量,触突是否允许跨区、是否与某小区或大区相连,每个区的变异概率,每种脑细胞的变异概率。基因可以写成文本格式存盘,被存盘的基因被称为蛋(Egg)。
每一代Frog有寿命通过下蛋的形式保证种群的繁殖蛋100%能孵化成功。通过一定数量的蛋保证变异的发生不影响种群的灭绝。
因为目的是为了获取智能生命体,所以有些实验就不做了,如食物匮乏或下蛋太多导致种群灭绝,精子的模拟,蛋的生存率,生命体对蛋本能的保护等。
Frog的所有一切包括寿命、下蛋数量、什么时候开始下蛋等等都是可以遗传、变异的并通过蛋的形式表达。所以说这个实验的最终目的就是一个蛋。
Copy URL
920504_drinkjava2
/drinkjava2owner4 months ago
眼睛部分的设计: 因为是平面虑拟环境以角度来划分开始只设定50个角度也就是50个象素点每个角度上有物体存在则对应的神经元激活。有多少个眼睛眼睛数量可以随机进化)、每个眼睛最终有多个少角度由优胜劣汰来决定。这50个象素点对于脑模型很简单只要放50个(或群)神经元即可,但对虚拟环境要求较高,在任一个角度,程序员要计算出这条直线上是否有物体存在,从而好激活对应的神经元细胞。
理论上来说,眼睛越多,眼睛之间的间隔越大(间隔会产生立体感)、眼睛的象素点越多则竟争力越强所以引入能量限制神经元的激活须要消耗少部分能量不允许出现眼睛数量无限增长、象素点无限增大这种情况要么象老鹰一样象素点非常多要么象晴蜓一样有很多复眼但是总体上象素点总数控制在一定范围以避免无谓的能量消耗。另一方面如果总象素点太多对性能也有影响在同样的CPU分时计算资源下在竟争中可能反而落于下风。视觉区与思维区是直连的 但是思维区的分辩率如果远小于视觉区,则视觉区分辩率再高也是多余的。
Copy URL
920504_drinkjava2
/drinkjava2owner4 months ago
由电脑随机生成的脑结构,有可能最终构造和人脑完完全全不一样,但是最终的表现效果却会达到或超过人脑智能水平。也就是说,可能有许许多多的脑结构方案,而人脑或生物脑只是一千种方案中的某一种而已。也就是说,复杂性和规模性是智能的关键,只要在优胜劣汰下发展,达到一定的复杂性和规模就行了,具体的结构方案实现并不重要。
Copy URL
kernel218
/2184 months ago
你咋这么牛~~~
Copy URL
920504_drinkjava2
/drinkjava2owner4 months ago
可能跟我的日本名叫“牛八甬力”有关吧。
Copy URL
920504_drinkjava2
/drinkjava2owner8 months ago
人脑为什么虚拟现实(做梦)这么快? 毫无迟涉感? 因为这存储神经元区的兴奋会自动在视觉区映射出相应的图像,不存在数据传输过程。神经元之间的连接具有直接通道,这是许多固化的通道,平时关闭,当存储神经元区兴奋时,神经细胞与视觉区连接的通道才接通,然后就在视觉区映射出相应的图像。
视觉区为什么能加载不同的神经元兴奋区? 海量的大脑存储数据数据为什么没有将视觉区淹没? 因为兴奋区总体上工作于串行模式,在任意时刻,只有少数存储神经元区兴奋。视觉区与所有的(图像)存储神经元区都有联系。平时大多数视觉区神胞都不激活(就好象一张白纸,充当背景),只有对应存储神经元区兴奋的视觉区神胞才激活(白纸上出现图像),视觉区(或者叫虚拟画面区)每一个最小分辩率的象素点,实际上都与成千上万个脑存储区有相连,只有这样才能做到任意存储区兴奋,视觉区都会有相应的象素点激活,也就是说,每一个最小分辩率对应的点,要么由几万个神经元组成,要么由少数神经元组成,但是它的输入触突数非常庞大,个人倾向于后者,因为结构最简单,而且与视觉区基本工作于串作模式的工作方式相符, 视觉区没有必要一次加载多个图像同样的一个神经元可以同时被多个存储区共享。个人认为一个象素点对应的神经元数量在1到50个之间比较合适。也就是说视觉区并行加载的图像在1到50个左右就可以了加载的图像太多对于脑的模式识别单元将是一个负担。 以上原理对于听觉区也适用,但为了简化编程,本项目暂不考虑听觉区,因为听觉并不影响自我意识(更准确地说,自我意识表现)的产生,见外设猜想。但是思维是建立在简化的抽象符号(语言也是一种)的基础上,没有了听力这个输入,这个项目用固定的有限的“汉字”集来建立一个抽象符号体系,由训练者和虚拟环境保证生命体只识别和输出这个汉字集,不出现非法汉字。
Copy URL
920504_drinkjava2
/drinkjava2owner9 months ago
1 2G内存肯定是不够的问题是有没有一个算法知道2G内存是不够的?
2 从简单条件反射、到简单的语言,一直训练到复杂的语言,而不是用海量的数据暴力训练,是培养出”意识“的关键,问题是怎样有效利用计算机来快速地从简单训练到高级? 我是没有时间去做语言训练的。
Copy URL
920504_drinkjava2
/drinkjava2owner10 months ago
所谓思考,就是主动刷新去维持一个虚拟画面(或听觉、运动等虚拟场景),为了让细胞克服疲劳,长时间激活,需要花更多的能量,长时间激活带来的后果就是细胞间的关联更牢固,这个牢固的代价就是能量的消耗,物质是思维的基础,物质的改变必然要消耗能量。 这个虚拟画面一直维持到一个新的虚拟画面产生。虚拟画面即是一种输入,也是一种输出,也可以后天形成条件反射。 思考,就是这么简单。
当我回想以前的事情,脑海里只有一幅幅图面,可见大脑也偷懒了,它只存贮静态的图面,不存贮动态的电影。
做梦,就是当细胞疲劳后,大脑放弃主动维持刷新,转移到激活其它的兴奋区,做梦不累,但是后果是 细胞间的关联不牢固,容易被遗忘。
虚拟画面无论在思考还是在做梦时都被人感知,它应该有两种可能,一种是虚拟画面区只存在于固定的区域,但是激活基本不消耗能量。另一种可能是虚拟画面区是产生于激活区,是随时变化的。这个可以通过脑电波检测来判定,如果清醒和睡着后,有一个区始终都在活动,则它就是固定的虚拟画面区,反之,则是游走的,个人倾向于后者。
Copy URL
920504_drinkjava2
/drinkjava2owner11 months ago
模式识别模块可以允许代码存在,但也仅限于此。代码不应该污染神经网络,从一开始就要做到。 遗传机制通过得到一个脑模型后,清空它的绝大部分连接,仅保留少部分固化下来,保留的这部分在今后相对稳定,不容易被清空,然后随机微调一下结构(变异)重新开始下一轮淘汰。 每个新的结构只用极少的规则来描述它的结构包含固化的部分连接。这样可以使每个“新生儿”的尺寸限制在M级类似压缩成DNA遗传编码。否则一个完整的大脑动辙上G的数据没地方存储就不能从海量的“新生儿”中来挑选出一批最优的了每次需要挑选出一群而不是单个这样可以保持生物多样性各种不同阶段固化的结构使得群体在淘汰过程中不容易被全部淘汰掉。
以下为一些遗传结构的重要参数供随机进化多少个脑半球初始3个), 多少个区,每个区在各自脑半球二维数组中的位置,每个区与其它区的初始连接数(固化连接),每个区神经元与相邻神经元初始连接(固化连接),每个区的神经元传入、传出触突数量,每个区的容量,每个神经元的远近覆盖比(相对于当前数组的偏移,近的神经元得到连接的可能性最大,远的连接少,但是要有个比率),每个区不同连接率神经元数量的比率。
Copy URL
920504_drinkjava2
/drinkjava2owner11 months ago
comments又回来了还是这个用着方便。
用单维、二维、3维数组来模拟脑都可以关键是它的数量。 可以假设3维模式是神经网络工作的最佳模式因为单位体积内神经元密度最高。但实现上有难度就连人脑可能也是二维结构要不怎么会有人脑皮层一说? 人脑约有10^10次方个细胞 触突连接数量大约为10^15个细胞数不多但连接数很多。 程序开始阶段先用3x100x100000三维int数组来模拟每个单元最多允许1000个连接, 平均为10个连接这样内存需求为3x100x100000x10x4byte=1.2G(连接和神经元共享同一内存区, 输入细胞也是这个区的一部分)普通的电脑都可以跑了。以上所有参数在运行过程中将根据优胜夯汰、随机进化原则自动调整。总容量因受电脑制约目前只能向下调整今后可以向上调整但不超过192G这是64位个人电脑能支持的上限。
Copy URL
920504_drinkjava2
/drinkjava2owner11 months ago
comments到哪去啦原来还有自动删comments的功能以前的笔记都丢了。
Copy URL
920504_drinkjava2
/drinkjava2owner12 months ago
利用优胜夯汰、随机变异、用进废退这三大原则,利用计算机的高速度来让电脑自动生成最优神经网络脑模型,而不是手工从算法着手来模拟人脑,可能是一个捷径,比较适合象我这样的懒人和苯人,因为不用花太多时间去研究算法(模式识别的成果可以引用,因为眼睛是关键的输入兴备区),只需要花时间在模拟环境和编制简单的用进废退逻辑即可。从单细胞进化到多细胞、从青蛙进化到人类,对于大自然来说,它从来就不懂什么是算法,这是一个漫长的、随机的进化过程,但在超级电脑上跑可能只要几天时间,就可能得到一个相当不错的脑模型。当然电脑速度越快、容量越大、环境模拟的越真实,则优胜夯汰后形成的脑结构就越复杂,错的脑模型都被自然淘汰掉了。 从算法着手搭建,还是从模拟环境着手自动进化,这是创建人工生命的两个大方向。模拟环境的难点在于环境本身必须足够复杂、正确。而且必须循序渐进,与脑的进化同步,如果把一群青蛙扔到猴子的模拟环境中,则所有青蛙都会被自然淘汰掉,项目就无法进行下去了。 怎样做到模拟环境的循序渐进目前一种方法是从模仿像素开始到模仿写出123, 到模仿1+1=2到模仿解方程。。。数学是一个比较好的循序渐进的模型后面的知识全部建立在以前的基础上。模仿围棋也可以可以从几格扩大到19格但是模拟围棋比较复杂只能通过两个脑对杀才行没有数学这么简单而数学可以随机出题用标准答案来判定脑模型的解题正确性。
用模拟环境的方法得到的脑模型,可以解决任意问题,直到产生意识现象为止。学完数学可以接着学画画,学完画画可以接着学打球...,前面的学习和后面的学习会自动累加,并产生创造性条件反射,这是神经网络的能力。当它能解决的问题足够复杂时,能够正确解析“我”这个词时,我们可以称他为拥有了"意识"。
Copy URL
920504_drinkjava2
/drinkjava2ownera year ago
看不见摸不着的思维,例如心里面想象一幅画,它的物理基础是脑神经元兴奋区确确实实地组成了一幅画。
Copy URL
920504_drinkjava2
/drinkjava2ownera year ago
思维的本质是虚拟现实并代入主体,预计各种可能发生的情况并作出反映,根据结果产生奖励或惩罚,环境是虚拟的,奖励或惩罚神结元兴奋却是实在的。 越简单的动物虚拟现实的能力越差,所以思维能力差。这里的虚拟现实包括一切以前经历过的神经兴奋,如图象、声音、各种感觉,都可以模拟。这是一种"创造性思维"条件反射的建立,因为在这个模拟过程中,可能会出现根本未发生过的假设,导致神经元产生奖励或惩罚兴奋。
为什么做到好梦会不愿意被吵醒? 因为在梦里神经元的奖励区兴奋了。
Copy URL
920504_drinkjava2
/drinkjava2ownera year ago
关于环境,用简单的语言教育第一代生命体,然后由第一代生命体去自动教育下一代,第一代的神经元数量活跃区在下一代有更多机率变异。引入生命死亡机制, 模拟“优胜劣汰、用进废退”,这样可以由外部环境来决定大脑的自动进化,而不是由手工来设计整个大脑结构,这可能是一个非常复杂的结构,手工很难完成。模拟环境的复杂度和正确性决定了大脑的复杂度。
Copy URL
920504_drinkjava2
/drinkjava2ownera year ago
昨天作梦,居然梦到“大脑思考区的图象不清晰了怎么办? 会有一种机制不断刷新它,像显像管不停需要刷新一样”,当时梦里觉得特有道理。先添加上来再说。
Copy URL
920504_drinkjava2
/drinkjava2ownera year ago
人脑才是虚拟现实的高手, 可能脑细胞这么多,最大用处就是用来虚拟现实的,把想象的内容在思考区排成一个虚拟环境,而且是实时的,豪无迟涩感,梦中居然感觉不到这是一个虚拟出来的环境,可见速度有多快。虚拟现实在平时思考时起了关键作用。
Copy URL
920504_drinkjava2
/drinkjava2ownera year ago
构思的重要>编码实现,最近想到什么就添上什么,这也算开发吧。
Copy URL
920504_drinkjava2
/drinkjava2ownera year ago
正式决定回到人工智能开发尝试一下简单人工生命的开发。早在02年前我就曾构思过"一个人工脑模型"并预言围棋人类将败。借着现在模式识别研究的突破,现在是时候尝试一下搭建这个脑模型了。