/Metaheuristicas

Prácticas de Metaheurísticas(MH) sobre selección de caracterísitcas en Java

Primary LanguageTeXGNU General Public License v3.0GPL-3.0

Metaheurísticas

Prácticas de Metaheurísticas(MH) sobre Selección de Características(SC).

Implementación

  • La clase ArffReader, que contiene el código de la función que lee archivos .arff a partir de los que se generan la instancias.
  • La clase CSVFileWriter, que contiene el código de la función que escribe los archivos .csv de salida.
  • La clase SC, que contiene la función main y el 5x2-CrossValidation.
  • La clase abstracta Heuristic, que implementa las funciones comunes que no dependen del azar dando cabida a la herencia por parte de cualquier tipo de heurística.
  • La clase abstracta RandomHeuristic, que implementa las funciones comunes que dependen del azar dando cabida a la herencia por parte las heurísticas con componente aleatoria.
  • La clase SFS, que implementa el comportamiento de la heurística de Sequential Forward Search.
  • La clase LocalSearch, que implementa el comportamiento de la heurística de Búsqueda Local del Primero Mejor con solución inicial aleatoria.
  • La clase SimulatedAnnealing, que implementa el comportamiento de la heurística de Enfriamiento Simulado con el esquema de enfriamiento de Cauchy modificado.
  • La clase TabooSearch, que implementa el comportamiento de la heurística de Búsqueda Tabú sin multiarranque con solución inicial aleatoria.
  • La clase BasicMultiBootingSearch, que implementa el comportamiento de la heurística de Búsqueda Multiarranque Básica con solución inicial aleatoria y optimizando con Búsqueda Local.
  • La clase GRASP, que implementa el comportamiento de la heurística de Greedy Randomized Adaptive Search Procedure con solución inicial greedy probabilista y optimizando con Búsqueda Local.
  • La clase IteratedLocalSearch, que implementa el comportamiento de la heurística de Búsqueda Local Reiterada con solución inicial aleatoria y posterior refinamiento mediante Búsqueda Local y mutación de la mejor solución encontrada.
  • La clase abstracta GeneticAlgorithm, que implementa las funciones comunes de los algoritmos genéticos permitiendo de este modo estructurar el esqueleto básico dando cabida a la herencia por parte de heurística con inspiración biológica.
  • La clase GenerationalGA, que implementa el comportamiento de la heurística del Algoritmo Genético Generacional con Elitismo con población inicial aleatoria.
  • La clase SteadyStateGA, que implementa el comportamiento de la heurística del Algoritmo Genético Estacionario con dos descendientes por generación con población inicial aleatoria.
  • La clase abstracta MemeticAlgorithm, que modifica el método Train de GeneticAlgorithm para adaptarlo a los algoritmos meméticos permitiendo de este modo desarrollarlos con facilidad.
  • La clase ElitistPartialMA, que implementa el comportamiento de la heurística del Algoritmo Memético Parcial Elitista con población inicial aleatoria.
  • La clase PartialMA, que implementa el comportamiento de la heurística del Algoritmo Memético Parcial con población inicial aleatoria.
  • La clase TotalMA, que implementa el comportamiento de la heurística del Algoritmo Memético Total como caso particular del Algoritmo Memético Parcial.

Licencias

El proyecto se distribuye bajo la licencia GPL.

La licencia NO se aplicará para el material aportado por el profesor.
La licencia se aplicará sobre CSVFileWriter aunque está tomado de Lothar Soto.

Off-Topic

Certificado de Calidad: 3179597.