0x01 NEAT
NEAT(增强拓扑的进化神经网络)是一种基于遗传算法和神经网络的机器学习算法,不同于全连接神经网络,NEAT的神经网络是可以跨层相连的;它由最初始的输入层和输出层神经元连接,迭代繁衍和进化达到最终形态。
具体的介绍可以参考莫凡老师的教程。
最近因为搜索raylib
的项目,发现了一个 简单的NEAT
库simpleNEAT,觉得挺有趣,就拿来做个实验。
创新互联服务项目包括金塔网站建设、
金塔网站制作、金塔网页制作以及金塔网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,
金塔网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到金塔省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!0x02 效果
0x03 代码
将simpleNEAT
中的lib目录放到项目文件夹,新建main.cpp
,写入以下代码,根据需要修改参数:
#include#include#include#include
0x04 编译
g++ -lraylib -std=c++17 -O2 main.cpp
0x05 运行
执行编译后生成的a.out
:
./a.out
0x05 用法
- 鼠标左键 绘制障碍
- 鼠标右键 清除障碍
- B 键设置个体出生位置
- T 键设置目标位置
- 空格键 开始/暂停训练
训练开始以后可以实时用添加障碍
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
当前标题:[c++]一个简单的NEAT机器学习寻路实验-创新互联
文章分享:
http://njwzjz.com/article/dcssch.html