com.brownsoft.ag.seleccion
Class SeleccionRuleta

java.lang.Object
  |
  +--com.brownsoft.ag.seleccion.SeleccionRuleta
All Implemented Interfaces:
IMotorListener, ISeleccion
Direct Known Subclasses:
SeleccionEstocasticaUniversal

public class SeleccionRuleta
extends java.lang.Object
implements ISeleccion

Esta clase implementa el operador de seleccion del tipo Ruleta, es decir que selecciona de a 2 individuos lanzando 2 veces una ruleta de n posiciones. El tamaño de cada posicion depende del fitness relativo que tenga cada individuo respecto a los demás

Version:
1.0
Author:
Gustavo Brown

Field Summary
protected  java.util.Vector poblacionIteracion
           
protected  double[] roulettePoints
           
 
Constructor Summary
SeleccionRuleta()
           
 
Method Summary
 void finAlgoritmo()
          Avisa que finalizó la ejecución del algoritmo
 void finIteracion()
          Indica que se finaliza la iteracion
 java.util.Vector generarNuevaPoblacion()
          Genera una nueva poblacion a partir de un pool
protected  int getPopSize()
           
 void inicializar(MotorAG motor)
          Inicializa el operador de seleccion
 void inicioIteracion()
          Avisa que se inicia una nueva iteración
 void ponerEnPoolIntermedio(IIndividuo[] individuos)
          Pone individuos en el pool intermedio
 IIndividuo[] seleccionar()
          Selecciona individuos
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

poblacionIteracion

protected java.util.Vector poblacionIteracion

roulettePoints

protected double[] roulettePoints
Constructor Detail

SeleccionRuleta

public SeleccionRuleta()
Method Detail

inicializar

public void inicializar(MotorAG motor)
Inicializa el operador de seleccion

Specified by:
inicializar in interface ISeleccion
Parameters:
motor - MotorAG asociado

inicioIteracion

public void inicioIteracion()
Avisa que se inicia una nueva iteración

Specified by:
inicioIteracion in interface IMotorListener

seleccionar

public IIndividuo[] seleccionar()
Selecciona individuos

Specified by:
seleccionar in interface ISeleccion
Returns:
IIndividuo[] con los individuos seleccionados

ponerEnPoolIntermedio

public void ponerEnPoolIntermedio(IIndividuo[] individuos)
Pone individuos en el pool intermedio

Specified by:
ponerEnPoolIntermedio in interface ISeleccion
Parameters:
individuos - individuos a ingresar en el pool intermedio

getPopSize

protected int getPopSize()

generarNuevaPoblacion

public java.util.Vector generarNuevaPoblacion()
Genera una nueva poblacion a partir de un pool

Specified by:
generarNuevaPoblacion in interface ISeleccion
Returns:
Vector con la nueva poblacion

finIteracion

public void finIteracion()
Indica que se finaliza la iteracion

Specified by:
finIteracion in interface IMotorListener

finAlgoritmo

public void finAlgoritmo()
Avisa que finalizó la ejecución del algoritmo

Specified by:
finAlgoritmo in interface IMotorListener