简单神经进化平台的基因型突变器开发
1. 引言
在神经进化系统中,基因型突变器起着至关重要的作用,它可以改变神经网络的拓扑结构和参数,从而推动系统的进化。本文将详细介绍几种重要的突变操作符以及基因型突变器模块的开发过程。
2. 关键突变操作符
2.1 add_sensor 操作符
add_sensor 突变操作符用于向基于神经网络(NN)的系统添加新的传感“器官”,从而修改代理的架构。一个代理可以拥有多个相同类型的传感器,只要它们在某些规格上有所不同。例如,同一类型的相机传感器可以安装在机器人的不同位置。
操作步骤如下:
1. 获取代理的形态名称。
2. 通过形态名称访问形态模块,获取该形态下所有可用传感器的列表。
3. 从可用传感器列表中减去代理已经使用的传感器列表,创建一个传感器池。
4. 从传感器池中随机选择一个传感器 A。
5. 创建传感器 A 的 ID,并将其添加到皮层的传感器 ID 列表中。
6. 从皮层的神经元 ID 列表中随机选择一个神经元 B。
7. 使用 link_FromElementToElement 函数建立从 A 到 B 的连接。
8. 更新代理的进化历史列表,添加新的元组 {add_sensor,SensorA_Id,NeuronB_Id} 。
9. 将更新后的代理、皮层、传感器和神经元元组写入数据库。
以下是 add_sensor 操作符的实现代码:
超级会员免费看
订阅专栏 解锁全文
20

被折叠的 条评论
为什么被折叠?



