GithubHelp home page GithubHelp logo

drinkjava2 / frog Goto Github PK

View Code? Open in Web Editor NEW
122.0 122.0 24.0 6.92 MB

Artifical Life researh project

Home Page: https://gitee.com/drinkjava2/frog

License: Apache License 2.0

Batchfile 0.16% Java 99.80% Shell 0.05%

frog's People

Contributors

drinkjava2 avatar kyugao avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

frog's Issues

同学,您这个项目引入了1个开源组件,存在3个漏洞,辛苦升级一下

检测到 drinkjava2/frog 一共引入了1个开源组件,存在3个漏洞

漏洞标题:Fastjson <=1.2.68 远程代码执行漏洞
缺陷组件:com.alibaba:[email protected]
漏洞编号:
漏洞描述:Fastjson 是Java语言实现的快速JSON解析和生成器,在<=1.2.68的版本中攻击者可通过精心构造的JSON请求,远程执行恶意代码。
漏洞原因:
Fastjson采用黑白名单的方法来防御反序列化漏洞,导致当黑客不断发掘新的反序列化Gadgets类时,发现在autoType关闭的情况下仍然可能可以绕过黑白名单防御机制,造成远程命令执行漏洞。
国家漏洞库信息:https://www.cnvd.org.cn/flaw/show/CNVD-2020-30827
影响范围:(∞, 1.2.69)
最小修复版本:1.2.69
缺陷组件引入路径:com.gitee.drinkjava2:[email protected]>com.alibaba:[email protected]

另外还有3个漏洞,详细报告:https://mofeisec.com/jr?p=i384f4

当前任务: 用随机连线方式实现两个及三个输入信号的模式识别

(因为最近进展太慢,把当前任务和思路发个issue写在这里)

当前任务:
用随机连线方式实现两个及三个输入信号的模式识别。一共有“视”、“咬”、“苦”、“甜”、“活”五种细胞,最后一个“活”细胞是特殊细胞,它一直保持激活,在没有外界信号输入时,整个系统由“活”细胞来驱动,(也可以由以前形成的循环信号驱动,但这个比较复杂了这里不讨论)

实现手段:
用细胞间的随机连线来在细胞间传输能量,连线有不同的属性,并且一个连线上可以有多种属性串连。
用遗传算法来筛选连线及连线的属性。最终实现根据不同的视信号,跳过味觉细胞,直接根据视觉信号驱动咬细胞这个模式识别任务。即吃的最多的个体胜出。
这个任务不使用分裂算法,因为个人发现细胞数量少,任务复杂时,采用连线方式更方便一点。分裂算法适用于海量参数的情况,但使用较麻烦。本阶段还是先改用连线算法,(当然了今后连线算法和分裂算法也是可以同时使用的,只要它们工作在同一个3维数组上)

======思考笔记====
神经元特性:
1.能量只保存在神经元上,只存贮正值, 在0~1之间
2.神经元如果能量有多余的,会随时间消逝

连线(树突、轴突)的特性:
连线上的能量永远是单向流动的。如果要产生双号信号流动,必须再新建一个连线,这样做的优点是编起程来会很简单,如果一个线上有多种属性只需要依次能量流动到某个属性时加减一下这个属性节点的能量增减值即可,而不需要象计算电流一样必须把所有电阻汇总之后才能用电压除以总电阻得到电流,也就是说能量象脉冲一样在线上传导,不能用电流电压来类比。 双向时当两边都有信号,谁向谁传信号哪个说了算?所以一条线上要双向传输信号是不好编程的。
如果用分裂算法,可以有少量连线伸的很长,模拟神经元的树突。但长连线不能太多,因为编程时用基因控制长连线更麻烦,巧合的是重要的东西数量少,实际神经元通常也是轴突比树突少,世上的道理是一样的。长连线能把整个脑编织汇总在一起。

以下为构想中的连线属性,一条线上可以有多个属性串联
*首先排除二极管属性, 因为如前述连线天然是单向的。当然三极管这个器件也不存在,过分复杂了,连线只有两个头,三极管功能可以通过多个连线加上神经元细胞的组合模拟出来。
*然后排除电容属性,连线只是起到传异能量的作用,我考虑能量只保存在细胞上,不保存在连线(触实/树突)上。

*.电阻属性,电导率可以为0到1之间,1表示无电阻的直连 0为断路
*.动态电阻属性,它的特点是细胞活跃越多,电阻越小,从而起到记忆作用。并且随时间流逝电阻增大,从而起到遗忘作用。它是记忆器件。
以前记忆属性想用电容来表示,后来发现用动态电阻这个名称更好。因为电阻是不存贮能量的,编程更简单。
普通电阻的阻值比较固定,只由遗传和随机变异决定。动态电阻阻值受活跃度影响。普通电阻是动态电阻的特例?受活跃度影响系数为0时即为普通电阻,也许可以合并成一种类型?
*.溢流阀属性,当能量值绝对值大于坝值时,多余的能量通过
*.溢破阀属性,当能量值绝对值大于坝值时,坝暂时破掉,所有能量通过。这两个阀有点类似,不知哪个更有用,先放上来再说吧。
*.放大器属性,与电阻的作用相反,可以放大通过的能量,它打破能量(熵)守恒。(比如要形成循环信号,必须要有一个放大器或永动细胞来持续补充能量,当然局部熵不守恒但总熵是守恒的,这种情况下是计算机系统向软件持续注入熵,计算机的熵从电源获取...)。
*.反向器属性,产生反相信号,把传输中的正能量变负,负能量变正。(非门的逻辑实现就在这里了)
基本就这些了,想到什么以后再添加。

一个脑系统看起来很复杂,但起步阶段熵量并不高,脑的熵量由两部分组成:构成结构的熵+细胞触突原料属性的熵,前者占了大头,但是前者是由环境和遗传算法提供的,人为(或大自然)并不需要干预太多,后者(细胞触突原料属性)是由随机生成的,这些属性并不太多,几句话就可以说清,正因为这部分的熵量并不大,才给随机生成带来了可行性,因为众所周知概率极小的事等同不可能发生,生物脑的存在也证明了脑的熵量属性并不复杂,否则就不可能随机进化出来。如果一个系统需要由二极管、三级管、四级管、五级管构成,并且这些管本身不能由其它管互相组合出来,那最终的结果就是永远不可能进化出这个系统出来,因为不符合概率论。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.