Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Algorithm::EvolutionarUsernContributed:PvrluDocumey::Individual::Bit_Vector(3)

NAME
	   Algorithm::Evolutionary::Individual::Bit_Vector - Classic bitstring individual for evolutionary computation;
			usually	called chromosome, and using a different implementation	from Algorithm::Evolutionary::Individual::BitString

SYNOPSIS
	   use Algorithm::Evolutionary::Individual::BitVector;

	   my $indi = new Algorithm::Evolutionary::Individual::Bit_Vector 10 ; # Build random bitstring	with length 10
					  # Each element in the	range 0	.. 1

	   my $indi3 = new Algorithm::Evolutionary::Individual::Bit_Vector;
	   $indi3->set(	{ length => 20 } );   #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 ) = 1;	#Sets the value

	   $indi3->addAtom( 1 ); #Adds a new character to the bitstring	at the end

	   my $indi4 = Algorithm::Evolutionary::Individual::Bit_Vector->fromString( '10110101');   #Creates an individual from that string

	   my $indi5 = $indi4->clone();	#Creates a copy	of the individual

	   my @array = qw( 0 1 0 1 0 0 1 ); #Create a tied array
	   tie my @vector, 'Algorithm::Evolutionary::Individual::Bit_Vector', @array;
	   print tied( @vector )->asXML();

	   print $indi3->asString(); #Prints the individual
	   print $indi3->asXML() #Prints it as XML. See	L<Algorithm::Evolutionary::XML>
	   print $indi3->as_yaml() #Change of convention, I know...

Base Class
       Algorithm::Evolutionary::Individual::String

DESCRIPTION
       Bitstring Individual for	a Genetic Algorithm. Used, for instance, in a
       canonical GA

METHODS
   new(	$arg )
       Creates a new bitstring individual. $arg	can be either {	length =>
	   $length} or { string	=> [binary string] }. With no argument,	a
	   length of 16	is given by default.

   Atom
       Sets or gets the	value of the n-th character in the string. Counting
       starts at 0, as usual in	Perl arrays.

   size()
       Returns size in bits

   clone()
       Clones using native methods. Does not work with general Clone::Fast,
       since it's implemented as an XS

   as_string()
       Overrides the default; prints the binary	chromosome

   Chrom()
       Returns the internal bit_vector

   TIE methods
       String implements FETCH,	STORE, PUSH and	the rest, so an	String can be
       tied to an array	and used as such.

   Copyright
	 This file is released under the GPL. See the LICENSE file included in this distribution,
	 or go to http://www.fsf.org/licenses/gpl.txt

	 CVS Info: $Date: 2010/12/19 21:39:12 $
	 $Header: /media/Backup/Repos/opeal/opeal/Algorithm-Evolutionary/lib/Algorithm/Evolutionary/Individual/Bit_Vector.pm,v 3.1 2010/12/19 21:39:12 jmerelo Exp $
	 $Author: jmerelo $
	 $Revision: 3.1	$
	 $Name $

perl v5.32.1		    Algorithm::Evolutionary::Individual::Bit_Vector(3)

NAME | SYNOPSIS | Base Class | DESCRIPTION | METHODS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Algorithm::Evolutionary::Individual::Bit_Vector&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help