Package main
Class BasuraAlgorithm
- java.lang.Object
-
- main.BasuraAlgorithm
-
public class BasuraAlgorithm extends java.lang.Object
Construcción y ejecución del algoritmo evolutivo.- Author:
- Toyos, Vallcorba
-
-
Field Summary
Fields Modifier and Type Field Description static float
crossoverP
static float
mutationP
-
Constructor Summary
Constructors Constructor Description BasuraAlgorithm(java.lang.String instanceFolder, int[] estadoInicial)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description int
getCantidadCamiones()
int
getMaxEvaluations()
int
getPopulationSize()
Itinerario
run()
Deprecated.Itinerario
run2()
Deprecated.Itinerario
run3()
Versión final del agloritmo evolutivo.Itinerario
runGreedy()
Algoritmo greedy para obtener la solución del itinerario.BasuraAlgorithm
setCantidadCamiones(int cantidadCamiones)
BasuraAlgorithm
setCapacidadCamiones(int capacidadCamiones)
BasuraAlgorithm
setCores(int cores)
BasuraAlgorithm
setMaxEvaluations(int maxEvaluations)
BasuraAlgorithm
setPopulationSize(int populationSize)
-
-
-
Method Detail
-
run
public Itinerario run()
Deprecated.Primera versión del algoritmo evolutivo. Utiliza el algoritmo generico simple con un multithreaded list evaluator.- Returns:
- Itinerario solución.
-
run2
public Itinerario run2()
Deprecated.Segunda versión del algoritmo evolutivo. Utiliza un algoritmo MOCHC con un multithreaded list evaluator.- Returns:
- Itinerario solución.
-
run3
public Itinerario run3()
Versión final del agloritmo evolutivo. Utiliza un algoritmo paralelo asíncrono de tipo master/slave.Los operadores son: cruzamiento HUX (Half uniform corssover) y bit flip mutation.
Las probabilidades a utilizar en el algoritmo fueron escogidas tras un estudio parametrico de performance para distitas combinaciones.- Returns:
- Itinerario solución.
-
runGreedy
public Itinerario runGreedy()
Algoritmo greedy para obtener la solución del itinerario. Sigue la estrategia presentada en el artículo.- Returns:
- Itinerario ejecución
-
getCantidadCamiones
public int getCantidadCamiones()
-
setCantidadCamiones
public BasuraAlgorithm setCantidadCamiones(int cantidadCamiones)
-
setCores
public BasuraAlgorithm setCores(int cores)
-
getPopulationSize
public int getPopulationSize()
-
setPopulationSize
public BasuraAlgorithm setPopulationSize(int populationSize)
-
getMaxEvaluations
public int getMaxEvaluations()
-
setMaxEvaluations
public BasuraAlgorithm setMaxEvaluations(int maxEvaluations)
-
setCapacidadCamiones
public BasuraAlgorithm setCapacidadCamiones(int capacidadCamiones)
-
-