All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class GP.Funcional

java.lang.Object
   |
   +----GP.Funcional

public abstract class Funcional
extends Object
implements Cloneable
Esta es la clase utilizada por la maquina de GP para manipular los nodos de un arbol de funcionales.
Todos los funcionales usados para la solucion de un problema deben descender directa o indirectamente de esta clase.


Variable Index

 o operandos
El arreglo para los operandos del funcional.
El constructor de las clases que desciendan de Funcional deben instanciar este arreglo con una longitud determinada.

Constructor Index

 o Funcional()

Method Index

 o buscaNodo(Entero, int)
 o buscaNodo(int)
Crea una referencia a un nodo en un arbol y a su padre.
 o clone()
Produce una copia "profunda" del funcional.
 o expandeADF(Funcional[])
Este metodo sustituye en un arbol de funcionales a aquellos nodos con un valor de getNArg() mayor a cero por su operando correspondiente en el arreglo op.
 o getNArg()
Por default, un funcional base no es argumento de una ADF.
La clase ArgADF sobreescribe este metodo para indicar que es argumento de una ADF.
 o getNNodos()
Cuenta el numero de nodos en un arbol de funcionales.
 o getNOp()
Indica el numero de operandos requeridos por el funcional.
 o getOp(int)
Devuelve alguno de los operandos del funcional.
 o getProf()
Devuelve la profundidad maxima de una arbol de funcionales.
 o getProf(int, Entero)
 o setOp(int, Funcional)
Sustituye alguno de los operandos del funcional.

Variables

 o operandos
 protected Funcional operandos[]
El arreglo para los operandos del funcional.
El constructor de las clases que desciendan de Funcional deben instanciar este arreglo con una longitud determinada.

Constructors

 o Funcional
 public Funcional()

Methods

 o clone
 public abstract Object clone()
Produce una copia "profunda" del funcional.

Overrides:
clone in class Object
 o getNOp
 public int getNOp()
Indica el numero de operandos requeridos por el funcional.

 o getOp
 public Funcional getOp(int n)
Devuelve alguno de los operandos del funcional.

 o setOp
 public void setOp(int n,
                   Funcional op)
Sustituye alguno de los operandos del funcional.

Parameters:
n - El numero de operando a sustituir (nO > 0).
op - El operando por el cual debe ser sustituido.
 o getNNodos
 public int getNNodos()
Cuenta el numero de nodos en un arbol de funcionales.

 o getProf
 public int getProf()
Devuelve la profundidad maxima de una arbol de funcionales.

 o getProf
 protected int getProf(int p_act,
                       Entero p_max)
 o buscaNodo
 public AtomLink buscaNodo(int n)
Crea una referencia a un nodo en un arbol y a su padre.

Parameters:
n - El numero de nodo que se desea encontrar.
Returns:
Una instancia de la clase AtomLink que identifica al nodo buscado.
 o buscaNodo
 protected AtomLink buscaNodo(Entero n,
                              int prof)
 o getNArg
 public int getNArg()
Por default, un funcional base no es argumento de una ADF.
La clase ArgADF sobreescribe este metodo para indicar que es argumento de una ADF.

See Also:
ArgADF
 o expandeADF
 public Funcional expandeADF(Funcional op[])
Este metodo sustituye en un arbol de funcionales a aquellos nodos con un valor de getNArg() mayor a cero por su operando correspondiente en el arreglo op.

Parameters:
op - El conjunto de operandos a sustituir.

All Packages  Class Hierarchy  This Package  Previous  Next  Index