I'm getting a TypeError with NEAT while trying to make a snake AI:
node_inputs.append(self.values[i] * w)
TypeError: can't multiply sequence by non-int of type 'float'
Code
class SnakeGame(object):
def __init__(self, genomes, config):
self.genomes = genomes
self.nets = []
for id, g in self.genomes:
net = neat.nn.FeedForwardNetwork.create(g, config)
self.nets.append(net)
g.fitness = 0
code in another function but same class
def game(self):
while True:
for event in pg.event.get():
if event.type == pg.QUIT:
pg.quit()
data = self.nets[0].activate(self.getData())
output = data.index(max(data))
what the function getData looks like
def getData(self):
data = [self.x_position, self.y_position, self.food_x, self.food_y, self.snakeLength]
return data
part of code for config-feedforward.txt
[NEAT]
fitness_criterion = max
fitness_threshold = 1000
pop_size = 2
reset_on_extinction = True