On Wed May 03 21:03:45 2017, SPROUT wrote:
Show quoted text> Because the example in the synopsis is not indented, it gets flowed as
> a regular paragraph, and looks like this:
>
> use AI::ANN; my $network = new AI::ANN ( input_count => $inputcount,
> data => \@neuron_definition ); my $outputs = $network->execute(
> \@inputs ); # Basic network use use AI::ANN::Evolver; my $handofgod =
> new AI::ANN::Evolver (); # See that module for calling details my
> $network2 = $handofgod->mutate($network); # Random mutations # Test an
> entire 'generation' of networks, and let $network and $network2 be #
> among those with the highest fitness function in the generation. my
> $network3 = $handofgod->crossover($network, $network2); # Perhaps
> mutate() each network either before or after the crossover to #
> introduce variety.
Similar problem in AI::ANN::Evolver:
mutation_chance is the chance that calling mutate() will add a random
value on a per-link basis. It only affects existing (nonzero)
links. mutation_amount is the maximum change that any single mutation
can introduce. It affects the result of successful
mutation_chance rolls, the maximum value after an add_link_chance
roll, and the maximum strength of a link that can be deleted by
kill_link_chance rolls. It can either add or subtract.
add_link_chance is the chance that, during a mutate() call, each pair
of unconnected neurons or each unconnected neuron => input pair
will spontaneously develop a connection. This should be extremely
small, as it is not an overall chance, put a chance for each
connection that does not yet exist. If you wish to ensure that
your neural net does not become recursive, this must be zero.
kill_link_chance is the chance that, during a mutate() call, each pair
of connected neurons with a weight less than mutation_amount or
each neuron => input pair with a weight less than mutation_amount
will be disconnected. If add_link_chance is zero, this should also
be zero, or your network will just fizzle out.
sub_crossover_chance is the chance that, during a crossover() call,
...