change the args for genome.forward. Origin: (state, inputs, transformed) New: (state, transformed, inputs)
50 lines
1.2 KiB
Python
50 lines
1.2 KiB
Python
from utils import State
|
|
|
|
|
|
class BaseAlgorithm:
|
|
def setup(self, state=State()):
|
|
"""initialize the state of the algorithm"""
|
|
|
|
raise NotImplementedError
|
|
|
|
def ask(self, state: State):
|
|
"""require the population to be evaluated"""
|
|
raise NotImplementedError
|
|
|
|
def tell(self, state: State, fitness):
|
|
"""update the state of the algorithm"""
|
|
raise NotImplementedError
|
|
|
|
def transform(self, state, individual):
|
|
"""transform the genome into a neural network"""
|
|
raise NotImplementedError
|
|
|
|
def restore(self, state, transformed):
|
|
raise NotImplementedError
|
|
|
|
def forward(self, state, transformed, inputs):
|
|
raise NotImplementedError
|
|
|
|
def update_by_batch(self, state, batch_input, transformed):
|
|
raise NotImplementedError
|
|
|
|
@property
|
|
def num_inputs(self):
|
|
raise NotImplementedError
|
|
|
|
@property
|
|
def num_outputs(self):
|
|
raise NotImplementedError
|
|
|
|
@property
|
|
def pop_size(self):
|
|
raise NotImplementedError
|
|
|
|
def member_count(self, state: State):
|
|
# to analysis the species
|
|
raise NotImplementedError
|
|
|
|
def generation(self, state: State):
|
|
# to analysis the algorithm
|
|
raise NotImplementedError
|