Class SimulatedAnnealingAgent

All Implemented Interfaces:
Serializable, Cloneable

public class SimulatedAnnealingAgent extends HeuristicAgent
Agente que implementa el algoritmo meta-heurístico "Recocido simulado".
See Also:
Serialized Form
  • Constructor Details

    • SimulatedAnnealingAgent

      public SimulatedAnnealingAgent(Environment env)
      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

      public String getAlgorithmName()
      Description copied from class: Agent
      Pregunta al agente el nombre del algoritmo que implementa.
      Specified by:
      getAlgorithmName in class Agent
      Returns:
      Nombre del algoritmo que implementa.
    • getAlgorithmColor

      public Color getAlgorithmColor()
      Description copied from class: Agent
      Pregunta al agente el color por defecto de los agentes de su tipo.
      Specified by:
      getAlgorithmColor in class Agent
      Returns:
      Color por defecto de los agentes que implementan ese algoritmo.
    • getNextMovement

      public Direction getNextMovement()
      Description copied from class: Agent
      Obtiene el siguiente movimiento dado el estado actual del agente.
      Specified by:
      getNextMovement in class Agent
      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 class Agent
    • getConfigurationPanel

      public AgentConfigurationPanel getConfigurationPanel()
      Description copied from class: Agent
      Obtiene el panel de configuración asociado al agente.
      Specified by:
      getConfigurationPanel in class Agent
      Returns:
      Un panel de configuración para el agente.
    • clone

      public Object clone()
      Specified by:
      clone in class Agent
    • getNeighbours

      public ArrayList<Direction> 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.