Neat-python中FeedForwardNetwork.activate()参数数量不匹配报错咨询
解决NEAT中FeedForwardNetwork.activate()参数数量错误问题
问题原因
FeedForwardNetwork.activate()方法仅需传入一个包含所有输入值的列表/元组(第一个self参数由Python自动传递,无需手动传入),你现在把输入值逐个作为位置参数传入,导致参数数量超标触发报错。
修正步骤
打包输入参数
把分散的输入值打包成列表或元组后再传入activate():# 把6个输入参数打包成列表(确保数量和配置文件一致) input_values = [ player_.red_x, player_.red_y, player_.blue_x, player_.blue_y, player_.catcher, # 补充代码中省略的第6个参数 ] # 传入打包后的列表 output = nets[x - 2].activate(input_values)核对配置文件
确认config.txt中的num_inputs设置为6,和输入参数数量严格匹配,配置示例:[NEAT] num_inputs = 6验证参数长度
确保传入的列表长度和num_inputs完全一致,避免后续出现维度不匹配的错误。
内容的提问来源于stack exchange,提问作者Bryan
相关产品推荐
相关产品推荐

