Skip Menu |

This queue is for tickets about the AI-ANN CPAN distribution.

Report information
The Basics
Id: 121520
Status: open
Priority: 0/
Queue: AI-ANN

People
Owner: Nobody in particular
Requestors: 'spro^^*%*^6ut# [...] &$%*c
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: Verbatim code in SYNOPSIS is not verbatim
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.
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, ...