public class rutaTuristicaRecocidoSimulado extends problemaRutasTuristicas
Modifier and Type | Field | Description |
---|---|---|
private boolean |
algoritmo |
false para aleatorio 1 para grasp
|
private int |
TEMPERATURA |
Número de candidatos para realizar la elección del próximo lugar en algoritmo GRASP
|
listaTabu, lugaresVisitados, solucionDiaria
Constructor | Description |
---|---|
rutaTuristicaRecocidoSimulado(java.lang.String ficheroLugares,
java.lang.String ficheroMatrizDistancias,
java.lang.String ficheroMatrizTiempos,
int numDias,
int numHorasDia,
boolean algor) |
Constructor de la clase rutaTuristicaRecocidoSimulado
|
Modifier and Type | Method | Description |
---|---|---|
java.util.ArrayList<java.lang.Integer> |
aplicarRecocidoSimulado(java.util.ArrayList<java.lang.Integer> visitaDiaria,
java.util.ArrayList<java.util.ArrayList<java.lang.Integer>> diasAnteriores,
float temperatura) |
Método que aplica un recocido simulado con determinada probabilidad de aceptación si la solucion es peor
|
boolean |
getAlgoritmoInicial() |
Método que devuelve que algoritmo inicial se aplica, aleatorio y grasp
|
void |
resolverProblema(boolean Estrategia) |
Método abstracto para la resolución de problemas
Se implementarán:
Algoritmo Aleatorio,
Algoritmo Greedy,
Algoritmo GRASP,
Busqueda Local,
Multiarranque,
Recocido Simulado,
Busqueda Tabú y
BVNS
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
busquedaLocal1a1, busquedaLocal2a1, busquedaLocalCambioVisita, calcularKilometrosEmpleado, calcularTiempoEmpleado, calcularValorDiario, calcularValorTotal, contieneListaTabu, getListaTabu, getLugaresTuristicosDisponibles, getLugaresVisitados, getNumDiasEstancia, getNumHorasDiarias, getSolucionDiaria, mostrarConsultaItinerarioDia, mostrarItinerarioViaje, solucionAleatoria, solucionGRASP, solucionGRASPParcial, solucionParcialAleatoria, yaVisitado
private final int TEMPERATURA
private boolean algoritmo
public rutaTuristicaRecocidoSimulado(java.lang.String ficheroLugares, java.lang.String ficheroMatrizDistancias, java.lang.String ficheroMatrizTiempos, int numDias, int numHorasDia, boolean algor) throws java.io.FileNotFoundException, java.io.IOException
ficheroLugares
- Fichero con la descripcion de los lugaresficheroMatrizDistancias
- Fichero con las distancias entre todos los lugaresficheroMatrizTiempos
- Fichero con los tiempos para llegar de un lugar a otronumDias
- Número de días del itinerarionumHorasDia
- Número de horas diarias del itinerarioalgor
- Algoritmo inicial elegido, 0 para aleatorio y 1 para graspjava.io.FileNotFoundException
- Error, fichero no validojava.io.IOException
- Error de entrada/salidapublic void resolverProblema(boolean Estrategia)
problemaRutasTuristicas
resolverProblema
in class problemaRutasTuristicas
public java.util.ArrayList<java.lang.Integer> aplicarRecocidoSimulado(java.util.ArrayList<java.lang.Integer> visitaDiaria, java.util.ArrayList<java.util.ArrayList<java.lang.Integer>> diasAnteriores, float temperatura)
visitaDiaria
- Solución diaria inicialdiasAnteriores
- Solución dias anteriores si los hubieratemperatura
- Probabilidad de aceptación de una peor solución
e^Af/T
Recocido modificado 1/(a + eAf/T)public boolean getAlgoritmoInicial()