def _random_genes(self): net = Network(2, 1) net.add_neuron(connections=['in0', 'in1'], weights=[self._random_weight(), self._random_weight()], bias=self._random_weight(), activation='sigmoid') net.add_neuron(connections=['in0', 'in1'], weights=[self._random_weight(), self._random_weight()], bias=self._random_weight(), activation='sigmoid') net.neurons['out0'].connections = ['h0', 'h1'] net.neurons['out0'].weights = [ self._random_weight(), self._random_weight() ] net.neurons['out0'].neuron_type = 'feed_forward_neuron' net.neurons['out0'].bias = self._random_weight() net.neurons['out0'].activation = 'sigmoid' return net
def main(): net = Network(2, 1) net.add_neuron(connections=['in0', 'in1'], weights=[+20, +20], bias=-30, activation='sigmoid') net.add_neuron(connections=['in0', 'in1'], weights=[-20, -20], bias=+10, activation='sigmoid') net.neurons['out0'].connections = ['h0', 'h1'] net.neurons['out0'].weights = [+20, +20] net.neurons['out0'].neuron_type = 'feed_forward_neuron' net.neurons['out0'].bias = -10 net.neurons['out0'].activation = 'sigmoid' net.save_network_to_file('truth.network.json') print('Truth network (#%s):' % net.name) print('%0.4f' % net.fitness(dataset)) test_sample(net, [0, 0]) test_sample(net, [0, 1]) test_sample(net, [1, 0]) test_sample(net, [1, 1]) print '------------------------------------' try: net = Network() net.load_network_from_file('result.network.json') print('result network (#%s):' % net.name) print('%0.4f' % net.fitness(dataset)) test_sample(net, [0, 0]) test_sample(net, [0, 1]) test_sample(net, [1, 0]) test_sample(net, [1, 1]) print '------------------------------------' except IOError: pass