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

FreeBSD Manual Pages

  
 
  

home | help
Algorithm::EvolutionarUsernContributedrPerl::Evolutionary::Individual::Tree(3)

NAME
       Tree - A	Direct Acyclic Graph, or tree, useful for Genetic
       Programming-Style stuff

SYNOPSIS
	   use Algorithm::Evolutionary::Individual::Tree;
	   #Hash with primitives, arity, and range for constants that multiply it

	   my $primitives = { sum => [2, -1, 1],
					  multiply => [2, -1, 1],
					  substract => [2, -1, 1],
					  divide => [2,	-1, 1],
					  x => [0, -10,	10],
					  y => [0, -10,	10] };

	   my $indi = new Algorithm::Evolutionary::Individual::Tree $primitives, 5 ; # Build random tree with knwo primitives
						  # and	depth up to 5

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

	   print $indi3->asString(); #Prints the individual
	   print $indi3->asXML() #Prints it as XML. See	L<XML> for more	info on	this

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

DESCRIPTION
       Tree-like individual for	genetic	programming. Uses direct acyclic
       graphs as representation	for trees, which is very convenient. This
       class has not been tested extensively, so it might not work.

METHODS
   new(	$primitives, $depth, $fitness )
       Creates a new tree using	a primitives hashref, max depth, and a ref-to-
       fitness

   set
       Sets values of an individual; takes a hash as input

   randomize
       Assigns random values to	the elements

   fromString
       Probably	useless, in this case. To be evolved.

   clone
       Similar to a copy ctor: creates a new individual	from another one

   asString
       Prints it

   nodePrint
       Prints a	node

   closeParens
       Internal	subrutine: closes node parenthesis

   Atom
       Returns the tree, which is atomic by itself. Cannot be used as lvalue

   asXML
       Prints it as XML. It prints the tree as String, which does not mean you
       will be able to get it back from	this form. It's	done just for
       compatibity, reading from this format will be available.	In the future.

   addAtom
       Dummy sub

   lolprint
       Print the list of lists that composes the tree, using prefix notation

   growSubTree
       Grows a random tree, with primitives as indicated, and a	certain	depth.
       Depth defaults to 4

   size()
       Returns 1, since	it's got only 1	Atom

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: 2009/07/28 11:30:56 $
	 $Header: /media/Backup/Repos/opeal/opeal/Algorithm-Evolutionary/lib/Algorithm/Evolutionary/Individual/Tree.pm,v 3.1 2009/07/28	11:30:56 jmerelo Exp $
	 $Author: jmerelo $
	 $Revision: 3.1	$
	 $Name $

perl v5.24.1			  Algorithm::Evolutionary::Individual::Tree(3)

NAME | SYNOPSIS | Base Class | DESCRIPTION | METHODS | Copyright

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

home | help