redcentipede:Rust 中的遗传算法项目

  • Z5_921374
    了解作者
  • 5.8KB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-04-10 11:55
    上传日期
红蜈蚣 Rust 中的遗传算法项目 该项目的概念大量借鉴了。 红蜈蚣的一般博弈论 那里存在: 世界 部分代理 一些资源 时间单位 世界- 世界是一个具有 X、Y 坐标的二维网格。 存在的代理和资源都有一个 X 和一个 Y,它们指的是该实体在世界中的坐标。 从上面看,世界是一个平面,世界没有物理。 代理- 代理是具有动作能力的实体,其动作/React由该代理的遗传密码确定。 代理具有代表该代理在世界中的位置的 X 和 Y 坐标。 此外,代理有自己的资源储备,当代理行动时会消耗这些资源。 资源- 资源是一个无法执行操作的实体,它生成到世界中并(希望)由代理收集。 资源具有 X 和 Y 坐标以及表示该资源的 .... ummm ... 值的数值。 当代理获取资源时,该资源的价值被添加到代理的资源储备中,然后该资源被销毁。 时间- 时间是一个离散的、回合制的循环。 在每个时间周期中,代理是
redcentipede-master.zip
  • redcentipede-master
  • src
  • main.rs
    1.6KB
  • img
  • red_centipede_logo.png
    1.8KB
  • Cargo.toml
    176B
  • Cargo.lock
    48B
  • LICENSE
    1.1KB
  • README.md
    2.6KB
  • TODO
    284B
  • .gitignore
    91B
内容介绍
![alt text](https://raw.githubusercontent.com/jlgoldb2/redcentipede/master/img/red_centipede_logo.png "The Red Centipede") Red Centipede ============ ### A Genetic Algorithm Project in Rust The concepts of this project borrow heavily from [andrewrk's planet-evo project](https://github.com/andrewrk/planet-evo "andrewrk's planet-evo"). ### General Game Theory of Red Centipede There exists: + The World + Some Agents + Some Resources + Units of Time __The World__ - the World is a 2-dimensional grid with X,Y coordinates. Agents and Resources that exist have both an X and a Y that refers to that entity's coordinates in the World. The World is a plane as viewed from above, and the World has no physics. __Agents__ - An Agent is an action-capable entity whose actions/reactions are determined by that Agent's genetic code. An Agent has an X and Y coordinate that represents that Agent's placement in the World. Additionally, an Agent has its own reserves of Resources that are consumed when that Agent acts. __Resources__ - A Resource is an action-incapable entity which is spawned into the World and (hopefully) collected by Agents. A Resource has X and Y coordinates and a numerical value which represents that Resource's .... ummm ... value. When an Agent acquires a Resource that Resource's value is added to the Agent's reserves of Resource and then that Resource is destroyed. __Time__ - Time is a discrete, turn-based cycle. During each cycle of Time, Agents act or not and Resources are spawned or not. At the beginning of each cycle of Time, a new World is spawned, then each Agent has a turn to act based on that Agent's perception of the previous World. Upon completion of all Agents' actions for the current cycle outcomes are assessed (e.g. If during the current cycle of Time an Agent's action was to acquire a Resource, that Resouce's value is transferred to the Agent's reserves and the Resource is destroyed.). Once all outcomes are assessed, the World's coordinate system is updated with each Agent's X and Y. Then, if necessary, new Resources are created in the World. (Finally, the World is drawn to the screen?) ### Genetics In Red Centipede, each Agent has at least one Chromosome which is an array of sets of instructions. A each set of instructions is called a Gene. For a gene to begin its execution The beginning of the execution of a Gene's instruction set incures a cost in Resource and a cost in Time. Necessary Genes (changes in these genes are most likely lethal): + reproduction_trigger - begins reproduction + reproduction_continue - allows reproduction to continue + ... more to come...
评论
    相关推荐
    • rake-rs — RAKE算法Rust上的多语言实现-Rust开发
      RAKE.rs该库提供了用于Rust的快速自动关键字提取(RAKE)算法的多语言实现。 如何在RAKE.rs上使用附加rake该库提供了Rust的快速自动关键字提取(RAKE)算法的多语言实现。 如何使用将rake附加到Cargo.toml的依赖项:...
    • cassowary-rs:Cassowary约束求解算法Rust实现
      cassowary-rs:Cassowary约束求解算法Rust实现
    • rust-genetic-algorithm-一种解决学术基准问题的遗传算法-Rust开发
      遗传算法Rust中的遗传算法可解决以下基准问题:Ackley Griewangk Rastrigin Rosenbrock Schwefel球体用法:Insta遗传算法Rust中的遗传算法可解决以下基准问题:Ackley Griewangk Rastrigin Rosenbrock Schwefel球体...
    • rusty-rete:Rete 算法Rust 中的实现
      生锈的网 Rete 算法Rust 中的实现。
    • freeverb-rs:Freeverb算法Rust实现
      Freeverb算法Rust实现。 关于自由词 Freeverb最初由“ Jezar at Dreampoint”用C ++编写,并于2000年6月发布到公共领域。现在,它已在多种软件的各种版本中广泛使用。 关于freeverb-rs Rust中Freeverb的这种实现...
    • spiril:用于遗传算法Rust
      Spiril是遗传算法的一种实现,该遗传算法用于通过突变和自然选择来获得任务的最佳变量(遗传)。 API使您可以指定一组初始单元,这些单元将充当所有后续单元的原始父级。 单位类型实现适应度函数和繁殖函数,以将新...
    • Rust:在Rust中实现的所有算法
      Rust:在Rust中实现的所有算法
    • twox-hash:XXHash算法Rust实现
      算法Rust实现。 例子 带有固定种子 use std :: hash :: BuildHasherDefault; use std :: collections :: HashMap; use twox_hash :: XxHash64; let mut hash: HashMap < _, _, BuildHasherDefault < XxHash64>>...
    • isosurface:等值面提取的Rust算法
      Rust中实现的等值面提取算法。 包括经典的行进立方体和双重轮廓技术,以及主题上的更多现代变化。 为了教育的目的,每种提取算法的文档都链接到相关的学术论文。 范例程序 cargo run --example sampler将执行采样...
    • SIM800C_MQTT.rar
      使用SIM800C模块,使用MQTT协议,连接中国移动onenet平台,能实现数据的订阅、发布、存储等