Package es.ull.mazesolver.agent
Class SimulatedAnnealingAgent
java.lang.Object
es.ull.mazesolver.agent.Agent
es.ull.mazesolver.agent.HeuristicAgent
es.ull.mazesolver.agent.SimulatedAnnealingAgent
- All Implemented Interfaces:
Serializable
,Cloneable
Agente que implementa el algoritmo meta-heurístico "Recocido simulado".
- See Also:
- Serialized Form
-
Field Summary
Fields inherited from class es.ull.mazesolver.agent.HeuristicAgent
m_dist
-
Constructor Summary
ConstructorsConstructorDescriptionCrea el agente en el entorno indicado con una configuración por defecto que no está adaptada a ningún laberinto en concreto. -
Method Summary
Modifier and TypeMethodDescriptionclone()
Pregunta al agente el color por defecto de los agentes de su tipo.Pregunta al agente el nombre del algoritmo que implementa.Obtiene el panel de configuración asociado al agente.double
int
Busca las celdas adyacentes accesibles desde la posición del agente.Obtiene el siguiente movimiento dado el estado actual del agente.void
Elimina la memoria que el agente tenga sobre el entorno.void
setCoolingRate(double rate)
Cambia el ratio de enfriamiento del agente por iteración.void
setInitialTemperature(int temp)
Cambia la temperatura inicial del agente.Methods inherited from class es.ull.mazesolver.agent.HeuristicAgent
getDistanceCalculator, setDistanceCalculator
Methods inherited from class es.ull.mazesolver.agent.Agent
doMovement, equals, getAgentColor, getAgentName, getEnvironment, getPos, getX, getY, hashCode, loadFile, look, saveFile, setAgentColor, setAgentName, setEnvironment, setPosition
-
Constructor Details
-
SimulatedAnnealingAgent
Crea el agente en el entorno indicado con una configuración por defecto que no está adaptada a ningún laberinto en concreto.- Parameters:
env
- Entorno en el que colocar al agente.
-
-
Method Details
-
getInitialTemperature
public int getInitialTemperature()- Returns:
- La temperatura inicial usada por el agente.
-
setInitialTemperature
public void setInitialTemperature(int temp)Cambia la temperatura inicial del agente.- Parameters:
temp
- La nueva temperatura inicial.
-
getCoolingRate
public double getCoolingRate()- Returns:
- El ratio de enfriamiento por iteración del agente.
-
setCoolingRate
public void setCoolingRate(double rate)Cambia el ratio de enfriamiento del agente por iteración.- Parameters:
rate
- El nuevo ratio de enfriamiento.
-
getAlgorithmName
Description copied from class:Agent
Pregunta al agente el nombre del algoritmo que implementa.- Specified by:
getAlgorithmName
in classAgent
- Returns:
- Nombre del algoritmo que implementa.
-
getAlgorithmColor
Description copied from class:Agent
Pregunta al agente el color por defecto de los agentes de su tipo.- Specified by:
getAlgorithmColor
in classAgent
- Returns:
- Color por defecto de los agentes que implementan ese algoritmo.
-
getNextMovement
Description copied from class:Agent
Obtiene el siguiente movimiento dado el estado actual del agente.- Specified by:
getNextMovement
in classAgent
- Returns:
- La dirección en la que el agente quiere realizar el siguiente movimiento.
-
resetMemory
public void resetMemory()Description copied from class:Agent
Elimina la memoria que el agente tenga sobre el entorno. No elimina su configuración, sino que lo deja en el estado inicial.- Specified by:
resetMemory
in classAgent
-
getConfigurationPanel
Description copied from class:Agent
Obtiene el panel de configuración asociado al agente.- Specified by:
getConfigurationPanel
in classAgent
- Returns:
- Un panel de configuración para el agente.
-
clone
-
getNeighbours
Busca las celdas adyacentes accesibles desde la posición del agente. No tiene en cuenta otros agentes.- Returns:
- Una lista con las direcciones vecinas (accesibles) del agente.
-