com.brownsoft.ag.seleccion
Class SeleccionEstocasticaUniversal

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

public class SeleccionEstocasticaUniversal
extends SeleccionRuleta

Esta clase implementa el operador de seleccion del tipo 'Muestreo Estocastico Universal' (Stochastic Universal Selection', que es un metodo de seleccion analogo al de la ruleta pero con M punteros equidistantes (donde M es la cantidad de individuos a seleccionar). Es decir que se realizan TODAS las selecciones asociadas a una iteración de a una vez. Este metodo no esta sesgado y su dispersion es la minima posible. El tamaño de cada posicion depende del fitness relativo que tenga cada individuo respecto a los demás. Se debe tener en cuenta que si una posicion es más grande que el espaciado entre 2 punteros de la ruleta, ese individuo va a ser seleccionado al menos 1 vez

Version:
1.0
Author:
Gustavo Brown

Field Summary
 
Fields inherited from class com.brownsoft.ag.seleccion.SeleccionRuleta
poblacionIteracion, roulettePoints
 
Constructor Summary
SeleccionEstocasticaUniversal()
           
 
Method Summary
 void inicioIteracion()
          Avisa que se inicia una nueva iteración
 IIndividuo[] seleccionar()
          Selecciona individuos
 
Methods inherited from class com.brownsoft.ag.seleccion.SeleccionRuleta
finAlgoritmo, finIteracion, generarNuevaPoblacion, getPopSize, inicializar, ponerEnPoolIntermedio
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SeleccionEstocasticaUniversal

public SeleccionEstocasticaUniversal()
Method Detail

inicioIteracion

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

Specified by:
inicioIteracion in interface IMotorListener
Overrides:
inicioIteracion in class SeleccionRuleta

seleccionar

public IIndividuo[] seleccionar()
Selecciona individuos

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