BiCIAM - Framework Metaheurístico 1.0
Framework de optimización con algoritmos metaheurísticos y evolutivos
Cargando...
Buscando...
Nada coincide
Referencia de la clase metaheuristics.generators.GeneticAlgorithm

Algoritmo genético con selección, cruzamiento, mutación y reemplazo. Más...

Diagrama de herencia de metaheuristics.generators.GeneticAlgorithm
Diagrama de colaboración de metaheuristics.generators.GeneticAlgorithm:

Métodos públicos

 GeneticAlgorithm ()
 Constructor por defecto del algoritmo genético.
State generate (Integer operatornumber) throws IllegalArgumentException, SecurityException, ClassNotFoundException, InstantiationException, IllegalAccessException, InvocationTargetException, NoSuchMethodException
 Genera un nuevo estado mediante selección, cruzamiento y mutación.
State getReference ()
 Obtiene el estado de referencia actual.
void setStateRef (State stateRef)
void setInitialReference (State stateInitialRef)
 Establece el estado de referencia inicial.
void updateReference (State stateCandidate, Integer countIterationsCurrent) throws IllegalArgumentException, SecurityException, ClassNotFoundException, InstantiationException, IllegalAccessException, InvocationTargetException, NoSuchMethodException
 Actualiza el estado de referencia con un nuevo candidato.
List< StategetListState ()
void setListState (List< State > listState)
List< StategetListStateRef ()
GeneratorType getGeneratorType ()
void setGeneratorType (GeneratorType generatorType)
GeneratorType getType ()
 Obtiene el tipo de generador.
List< StategetReferenceList ()
 Obtiene la lista de estados de referencia.
List< StategetSonList ()
 Obtiene la lista de estados hijos generados.
boolean awardUpdateREF (State stateCandidate)
 Verifica si se debe actualizar la referencia.
float getWeight ()
 Obtiene el peso actual del generador.
void setWeight (float weight)
 Establece el peso del generador.
int[] getListCountBetterGender ()
 Obtiene el historial de mejoras por período.
int[] getListCountGender ()
 Obtiene el historial de uso por período.
float[] getTrace ()
 Obtiene el historial de trazas.

Atributos públicos estáticos

static MutationType mutationType
 Tipo de mutación utilizada.
static CrossoverType crossoverType
 Tipo de cruzamiento utilizado.
static ReplaceType replaceType
 Tipo de reemplazo de soluciones.
static SelectionType selectionType
 Tipo de selección de padres.
static double PC
 Probabilidad de cruzamiento.
static double PM
 Probabilidad de mutación.
static int countRef = 0
 Contador de referencias.
static int truncation
 Tamaño de truncamiento para selección.

Atributos privados

State stateReferenceGA
 Estado de referencia del algoritmo genético.
List< StatelistState = new ArrayList<State>()
 Lista de estados de la población.
IFFactoryFatherSelection iffatherselection
 Factoría para la selección de padres.
IFFactoryCrossover iffactorycrossover
 Factoría para el operador de cruzamiento.
IFFactoryMutation iffactorymutation
 Factoría para el operador de mutación.
IFFactoryReplace iffreplace
 Factoría para el reemplazo de soluciones.
GeneratorType generatorType
 Tipo de generador metaheurístico.
float weight
 Peso del generador.
int[] betterCountByPeriod = new int[10]
 Contador de mejoras por período para problemas dinámicos.
int[] usageCountByPeriod = new int[10]
 Contador de uso por período para problemas dinámicos.
float[] listTrace = new float[1200000]
 Historial de trazas del peso.

Otros miembros heredados

Atributos públicos heredados de metaheuristics.generators.Generator
int countGender
 Contador de uso del generador.
int countBetterGender
 Contador de mejoras del generador.
int[] listCountBetterGender
 Array con las mejoras de cada generador en períodos de 10, acumulativo.

Descripción detallada

Algoritmo genético con selección, cruzamiento, mutación y reemplazo.

Esta clase implementa un algoritmo genético clásico que evoluciona poblaciones de soluciones mediante operadores genéticos de selección, cruzamiento y mutación.

Documentación de constructores y destructores

◆ GeneticAlgorithm()

metaheuristics.generators.GeneticAlgorithm.GeneticAlgorithm ( )

Constructor por defecto del algoritmo genético.

Inicializa el algoritmo con cruzamiento uniforme, mutación uniforme, reemplazo de los peores y selección por truncamiento, con peso inicial de 50.

Gráfico de llamadas de esta función:
Gráfico de llamadas a esta función:

Documentación de funciones miembro

◆ awardUpdateREF()

boolean metaheuristics.generators.GeneticAlgorithm.awardUpdateREF ( State stateCandidate)

Verifica si se debe actualizar la referencia.

Parámetros
stateCandidateEstado candidato a verificar
Devuelve
true si se debe actualizar, false en caso contrario

Reimplementado de metaheuristics.generators.Generator.

◆ generate()

State metaheuristics.generators.GeneticAlgorithm.generate ( Integer operatornumber) throws IllegalArgumentException, SecurityException, ClassNotFoundException, InstantiationException, IllegalAccessException, InvocationTargetException, NoSuchMethodException

Genera un nuevo estado mediante selección, cruzamiento y mutación.

Parámetros
operatornumberNúmero de operador a utilizar
Devuelve
Estado candidato generado por operadores genéticos
Excepciones
IllegalArgumentExceptionSi los argumentos son inválidos
SecurityExceptionSi hay problemas de seguridad
ClassNotFoundExceptionSi no se encuentra una clase
InstantiationExceptionSi hay error en la instanciación
IllegalAccessExceptionSi hay acceso ilegal
InvocationTargetExceptionSi hay error en la invocación
NoSuchMethodExceptionSi no se encuentra un método

Reimplementado de metaheuristics.generators.Generator.

Gráfico de llamadas de esta función:

◆ getGeneratorType()

GeneratorType metaheuristics.generators.GeneticAlgorithm.getGeneratorType ( )

◆ getListCountBetterGender()

int[] metaheuristics.generators.GeneticAlgorithm.getListCountBetterGender ( )

Obtiene el historial de mejoras por período.

Devuelve
Array con el contador de mejoras

Reimplementado de metaheuristics.generators.Generator.

◆ getListCountGender()

int[] metaheuristics.generators.GeneticAlgorithm.getListCountGender ( )

Obtiene el historial de uso por período.

Devuelve
Array con el contador de uso

Reimplementado de metaheuristics.generators.Generator.

◆ getListState()

List< State > metaheuristics.generators.GeneticAlgorithm.getListState ( )
Gráfico de llamadas a esta función:

◆ getListStateRef()

List< State > metaheuristics.generators.GeneticAlgorithm.getListStateRef ( )
Gráfico de llamadas de esta función:
Gráfico de llamadas a esta función:

◆ getReference()

State metaheuristics.generators.GeneticAlgorithm.getReference ( )

Obtiene el estado de referencia actual.

Devuelve
Estado de referencia actual

Reimplementado de metaheuristics.generators.Generator.

Gráfico de llamadas de esta función:

◆ getReferenceList()

List< State > metaheuristics.generators.GeneticAlgorithm.getReferenceList ( )

Obtiene la lista de estados de referencia.

Devuelve
Lista de estados de referencia

Reimplementado de metaheuristics.generators.Generator.

◆ getSonList()

List< State > metaheuristics.generators.GeneticAlgorithm.getSonList ( )

Obtiene la lista de estados hijos generados.

Devuelve
Lista de estados hijos

Reimplementado de metaheuristics.generators.Generator.

◆ getTrace()

float[] metaheuristics.generators.GeneticAlgorithm.getTrace ( )

Obtiene el historial de trazas.

Devuelve
Array con el historial de trazas

Reimplementado de metaheuristics.generators.Generator.

◆ getType()

GeneratorType metaheuristics.generators.GeneticAlgorithm.getType ( )

Obtiene el tipo de generador.

Devuelve
Tipo de generador metaheurístico

Reimplementado de metaheuristics.generators.Generator.

◆ getWeight()

float metaheuristics.generators.GeneticAlgorithm.getWeight ( )

Obtiene el peso actual del generador.

Devuelve
Peso del generador

Reimplementado de metaheuristics.generators.Generator.

◆ setGeneratorType()

void metaheuristics.generators.GeneticAlgorithm.setGeneratorType ( GeneratorType generatorType)

◆ setInitialReference()

void metaheuristics.generators.GeneticAlgorithm.setInitialReference ( State stateInitialRef)

Establece el estado de referencia inicial.

Parámetros
stateInitialRefEstado de referencia inicial

Reimplementado de metaheuristics.generators.Generator.

◆ setListState()

void metaheuristics.generators.GeneticAlgorithm.setListState ( List< State > listState)

◆ setStateRef()

void metaheuristics.generators.GeneticAlgorithm.setStateRef ( State stateRef)

◆ setWeight()

void metaheuristics.generators.GeneticAlgorithm.setWeight ( float weight)

Establece el peso del generador.

Parámetros
weightNuevo peso del generador

Reimplementado de metaheuristics.generators.Generator.

◆ updateReference()

void metaheuristics.generators.GeneticAlgorithm.updateReference ( State stateCandidate,
Integer countIterationsCurrent ) throws IllegalArgumentException, SecurityException, ClassNotFoundException, InstantiationException, IllegalAccessException, InvocationTargetException, NoSuchMethodException

Actualiza el estado de referencia con un nuevo candidato.

Parámetros
stateCandidateEstado candidato a considerar
countIterationsCurrentIteración actual del algoritmo
Excepciones
IllegalArgumentExceptionSi los argumentos son inválidos
SecurityExceptionSi hay problemas de seguridad
ClassNotFoundExceptionSi no se encuentra una clase
InstantiationExceptionSi hay error en la instanciación
IllegalAccessExceptionSi hay acceso ilegal
InvocationTargetExceptionSi hay error en la invocación
NoSuchMethodExceptionSi no se encuentra un método

Reimplementado de metaheuristics.generators.Generator.

Gráfico de llamadas de esta función:

Documentación de datos miembro

◆ betterCountByPeriod

int [] metaheuristics.generators.GeneticAlgorithm.betterCountByPeriod = new int[10]
private

Contador de mejoras por período para problemas dinámicos.

◆ countRef

int metaheuristics.generators.GeneticAlgorithm.countRef = 0
static

Contador de referencias.

◆ crossoverType

CrossoverType metaheuristics.generators.GeneticAlgorithm.crossoverType
static

Tipo de cruzamiento utilizado.

◆ generatorType

GeneratorType metaheuristics.generators.GeneticAlgorithm.generatorType
private

Tipo de generador metaheurístico.

◆ iffactorycrossover

IFFactoryCrossover metaheuristics.generators.GeneticAlgorithm.iffactorycrossover
private

Factoría para el operador de cruzamiento.

◆ iffactorymutation

IFFactoryMutation metaheuristics.generators.GeneticAlgorithm.iffactorymutation
private

Factoría para el operador de mutación.

◆ iffatherselection

IFFactoryFatherSelection metaheuristics.generators.GeneticAlgorithm.iffatherselection
private

Factoría para la selección de padres.

◆ iffreplace

IFFactoryReplace metaheuristics.generators.GeneticAlgorithm.iffreplace
private

Factoría para el reemplazo de soluciones.

◆ listState

List<State> metaheuristics.generators.GeneticAlgorithm.listState = new ArrayList<State>()
private

Lista de estados de la población.

◆ listTrace

float [] metaheuristics.generators.GeneticAlgorithm.listTrace = new float[1200000]
private

Historial de trazas del peso.

◆ mutationType

MutationType metaheuristics.generators.GeneticAlgorithm.mutationType
static

Tipo de mutación utilizada.

◆ PC

double metaheuristics.generators.GeneticAlgorithm.PC
static

Probabilidad de cruzamiento.

◆ PM

double metaheuristics.generators.GeneticAlgorithm.PM
static

Probabilidad de mutación.

◆ replaceType

ReplaceType metaheuristics.generators.GeneticAlgorithm.replaceType
static

Tipo de reemplazo de soluciones.

◆ selectionType

SelectionType metaheuristics.generators.GeneticAlgorithm.selectionType
static

Tipo de selección de padres.

◆ stateReferenceGA

State metaheuristics.generators.GeneticAlgorithm.stateReferenceGA
private

Estado de referencia del algoritmo genético.

◆ truncation

int metaheuristics.generators.GeneticAlgorithm.truncation
static

Tamaño de truncamiento para selección.

◆ usageCountByPeriod

int [] metaheuristics.generators.GeneticAlgorithm.usageCountByPeriod = new int[10]
private

Contador de uso por período para problemas dinámicos.

◆ weight

float metaheuristics.generators.GeneticAlgorithm.weight
private

Peso del generador.


La documentación de esta clase está generada del siguiente archivo: