![]() |
![]()
| ![]() |
![]()
NAMEAlgorithm::Evolutionary::Individual::String - A character string to be evolved. Useful mainly in word games SYNOPSISuse Algorithm::Evolutionary::Individual::String; my $indi = new Algorithm::Evolutionary::Individual::String ['a'..'z'], 10; # Build random bitstring with length 10 my $indi3 = new Algorithm::Evolutionary::Individual::String; $indi3->set( { length => 20, chars => ['A'..'Z'] } ); #Sets values, but does not build the string $indi3->randomize(); #Creates a random bitstring with length as above print $indi3->Atom( 7 ); #Returns the value of the 7th character $indi3->Atom( 3, 'Q' ); #Sets the value $indi3->addAtom( 'K' ); #Adds a new character to the bitstring at the end my $indi4 = Algorithm::Evolutionary::Individual::String->fromString( 'esto es un string'); #Creates an individual from that string my $indi5 = $indi4->clone(); #Creates a copy of the individual my @array = qw( a x q W z ñ); #Tie a String individual tie my @vector, 'Algorithm::Evolutionary::Individual::String', @array; print $indi3->as_string(); #Prints the individual Base ClassAlgorithm::Evolutionary::Individual::Base DESCRIPTIONString Individual for a evolutionary algorithm. Contains methods to handle strings easily. It is also TIEd so that strings can be handled as arrays. METHODSMY_OPERATORSKnown operators that act on this subroutine. Probably will be deprecated, so don't rely on its presence newCreates a new random string, with fixed initial length, and uniform distribution of characters along the character class that is defined. However, this character class is just used to generate new individuals and in mutation operators, and the validity is not enforced unless the client class does it randomizeAssigns random values to the elements addAtomAdds an atom at the end fromStringSimilar to a copy ctor; creates a bitstring individual from a string. Will be deprecated soon from_stringSimilar to a copy ctor; creates a bitstring individual from a string. cloneSimilar to a copy ctor: creates a new individual from another one asStringReturns the individual as a string with the fitness as a suffix. AtomSets or gets the value of the n-th character in the string. Counting starts at 0, as usual in Perl arrays. TIE methodsString implements FETCH, STORE, PUSH and the rest, so an String can be tied to an array and used as such. size()Returns length of the string that stores the info; overloads abstract base method. as_string()Returns the string used as internal representation ChromSets or gets the variable that holds the chromosome. Not very nice, and I would never ever do this in C++ Known subclasses
CopyrightThis file is released under the GPL. See the LICENSE file included in this distribution, or go to http://www.fsf.org/licenses/gpl.txt
|