# Osmos
[osmos.jerryshell.eu.org](https://osmos.jerryshell.eu.org)
Rust + WASM + Vite + 神经网络 + 遗传算法
Bilibili 视频:[https://www.bilibili.com/video/BV1vj411A7k2](https://www.bilibili.com/video/BV1vj411A7k2)
## 如何运行
第 0 步,安装 `wasm-pack`
[https://rustwasm.github.io/wasm-pack](https://rustwasm.github.io/wasm-pack)
第 1 步,编译 `osmos-wasm`
```bash
cd osmos-wasm
wasm-pack build --out-dir ../osmos-web/osmos-wasm
```
第 2 步,进入 `osmos-web` 安装依赖并运行
```bash
cd osmos-web
yarn
yarn dev
```
## 项目结构简介
```
osmos
├── osmos-core # 核心数据结构
├── osmos-nn # 神经网络
├── osmos-sim # 进化模拟器,使用类似 ECS 的模式驱动全局数据
│ └── src
│ ├── ga # 遗传算法
│ │ ├── crossover.rs # 交叉
│ │ ├── evolve.rs # 进化
│ │ ├── fitness.rs # 适应度
│ │ ├── gene.rs # 基因
│ │ ├── mutation.rs # 变异
│ │ └── selection.rs # 选择
│ └── system # ECS 子系统
│ ├── collision.rs # 碰撞系统
│ ├── epoch.rs # 迭代系统
│ ├── movement.rs # 移动系统
│ ├── network.rs # 神经网络系统
│ └── sensor.rs # 感知器系统
├── osmos-wasm # 将模拟器编译为 WASM,代理模式
└── osmos-web # Web UI,通过导入 WASM 启动模拟器,并将模拟器的数据渲染到 Canvas 中
```
## Vite WASM
1. Install `vite-plugin-wasm` & `vite-plugin-top-level-await`
```bash
yarn add -D vite-plugin-wasm vite-plugin-top-level-await
```
2. Edit `vite.config.js`
```js
import { defineConfig } from 'vite'
import wasm from 'vite-plugin-wasm'
import topLevelAwait from 'vite-plugin-top-level-await'
export default defineConfig({
plugins: [
wasm(),
topLevelAwait(),
]
})
```
## ⚠️ Rust WASM Warning
Don't use [wee_alloc](https://github.com/rustwasm/wee_alloc) in production code.
* [r/rust: dont_use_wee_alloc_in_production_code_targeting](https://www.reddit.com/r/rust/comments/x1cle0/dont_use_wee_alloc_in_production_code_targeting)
* [wee_alloc/issues: #106 Unbounded Memory Leak](https://github.com/rustwasm/wee_alloc/issues/106)
* [wee_alloc/issues: #107 Is this repo still maintained?](https://github.com/rustwasm/wee_alloc/issues/107)
* [RUSTSEC-2022-0054: wee_alloc is Unmaintained](https://rustsec.org/advisories/RUSTSEC-2022-0054.html)
## License
[GNU Affero General Public License v3.0](https://choosealicense.com/licenses/agpl-3.0)
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
深度学习,神经网络学习资源,机器学习源码及案例,经典人工智能算法。 深度学习,神经网络学习资源,机器学习源码及案例,经典人工智能算法。 深度学习,神经网络学习资源,机器学习源码及案例,经典人工智能算法。 深度学习,神经网络学习资源,机器学习源码及案例,经典人工智能算法。深度学习,神经网络学习资源,机器学习源码及案例,经典人工智能算法。深度学习,神经网络学习资源,机器学习源码及案例,经典人工智能算法。深度学习,神经网络学习资源,机器学习源码及案例,经典人工智能算法。深度学习,神经网络学习资源,机器学习源码及案例,经典人工智能算法。深度学习,神经网络学习资源,机器学习源码及案例,经典人工智能算法。深度学习,神经网络学习资源,机器学习源码及案例,经典人工智能算法。深度学习,神经网络学习资源,机器学习源码及案例,经典人工智能算法。深度学习,神经网络学习资源,机器学习源码及案例,经典人工智能算法。深度学习,神经网络学习资源,机器学习源码及案例,经典人工智能算法。深度学习,神经网络学习资源,机器学习源码及案例,经典人工智能算法。
资源推荐
资源详情
资源评论
收起资源包目录
Rust + WASM + 神经网络 + 遗传算法.zip (45个子文件)
osmos-master
osmos-web
yarn.lock 44KB
src
index.tsx 392B
App.tsx 2KB
index.css 1KB
package.json 433B
public
logo.svg 2KB
vite.config.ts 335B
index.html 473B
.gitignore 17B
tsconfig.json 349B
Cargo.toml 169B
osmos-core
Cargo.toml 116B
src
sensor.rs 239B
lib.rs 30B
cell.rs 1KB
LICENSE 34KB
Cargo.lock 12KB
.gitignore 29B
README.md 3KB
osmos-sim
Cargo.toml 207B
src
ga
mod.rs 103B
selection.rs 699B
crossover.rs 360B
evolve.rs 2KB
gene.rs 3KB
fitness.rs 108B
mutation.rs 514B
simulator.rs 1KB
lib.rs 83B
statistics.rs 3KB
system
sensor.rs 10KB
mod.rs 85B
network.rs 3KB
collision.rs 3KB
epoch.rs 421B
movement.rs 624B
object.rs 990B
osmos-nn
Cargo.toml 110B
src
neuron.rs 2KB
lib.rs 48B
network.rs 3KB
layer.rs 2KB
osmos-wasm
Cargo.toml 316B
src
lib.rs 2KB
wasm-pack-build.sh 50B
共 45 条
- 1
资源评论
白话机器学习
- 粉丝: 9297
- 资源: 7681
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功