Class PATableAgent

java.lang.Object
es.ull.mazesolver.agent.Agent
es.ull.mazesolver.agent.PATableAgent
All Implemented Interfaces:
Serializable, Cloneable

public class PATableAgent extends Agent
Clase que representa a un agente basado en una tabla de percepción-acción.
See Also:
Serialized Form
  • Constructor Details

    • PATableAgent

      public PATableAgent(Environment env)
      Crea el agente a partir de un entorno, con la configuración por defecto.
      Parameters:
      env - Entorno en el que crear el agente.
  • Method Details

    • setPerceptionActionTable

      public void setPerceptionActionTable(Direction[][][][] pa_table)
      Cambia la tabla de percepción-acción del agente por otra. Cada dimensión del array debe tener 2 posiciones (EMPTY y WALL) y tiene una dimensión por cada dirección alrededor del agente (UP, DOWN, LEFT y RIGHT). El valor de cada celda de la tabla puede ser cualquier Direction.
      Parameters:
      pa_table - La nueva tabla de percepción-acción. Se almacenará una copia de la misma.
    • getPerceptionActionTable

      public Direction[][][][] getPerceptionActionTable()
      Returns:
      Una copia de la tabla de percepción-acción del agente.
    • 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