GameAI_Demo

by 神经小番茄

11

Demo_AI_Training

This is a game AI demo implemented using neural networks in Godot 3.5

Here is the usage of theBrain.tscn:

1.设置

image

Input Layer Num: 输入层节点数量(参数).

Hidden Layer Num: 隐藏层节点数量 (尽量和Output Layer Num 不要差太多).

Output Layer Num: 输出层节点数量(决策行为).

Enable Train Set: 如果勾选,则会读取Train Data File 里面的文件值,用来做训练数据, 按顺序重复训练5000次,直到收敛. 注意:勾选后,每次一开始都会随机化节点值和权重值,所以有可能同一个训练集训出来的结果会不一样.

Train Data File: 按每行[输入1,输入2,输入3,输出1,输出2]的方式数组排列, 会根据Input Layer Num 和 Output Layer Num 更改对应的输入输出位置 如:Input Layer Num = 5, Outpu Layer Num = 4时 则csv按此排列[输入1,输入2,输入3,输入4,输入5,输出1,输出2,输出3,输出4] 每行一个训练数据 用0.1表示非,用0.9表示真

Pre Training :使用训练集前随机生成的节点值和权重值.

Post Training :使用训练好的结果, 注意当Enable Train Set 勾选时,Post Training会被复写,如果你已经训练好一个结果,记得另存,或者再次运行前记得取消Enable Train Set, 当Enable Train Set 取消勾选时,意味着AI将使用Post Training 里的文件作为Ai执行.

Post Training Dump : 当aveReTrainData() 函数被调用,则将当前训练的结果保存到该文件,文件名后面会加数字用于区分,

Save Data : 当saveReTrainData()函数被调用,保存当前新增的训练条目集到csv文件.

2.代码使用

image

setInput()里的 0,1,2 代表input params的索引

3.训练与保存

image

Version

1.0

Engine

3.5

Category

Demos

Download

Version1.0
Download

Support

If you need help or have questions about this plugin, please contact the author.

Contact Author