Class AStarAgent

All Implemented Interfaces:
Serializable, Cloneable

public class AStarAgent extends HeuristicAgent
Agente que implementa el comportamiento del algoritmo A*.
See Also:
Serialized Form
  • Constructor Details

    • AStarAgent

      public AStarAgent(Environment env)
      Inicializa el agente A* con la distancia de Manhattan por defecto.
      Parameters:
      env - Entorno en el que colocar al agente.
  • Method Details

    • 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.
    • setPosition

      public void setPosition(Point pos)
      Description copied from class: Agent
      Establece la posición del agente.

      Este método se puede sobrecargar en las clases derivadas para mantener coherente la memoria de la que disponga el mismo.
      Overrides:
      setPosition in class Agent
      Parameters:
      pos - Nueva posición del agente.
    • setEnvironment

      public void setEnvironment(Environment env)
      Description copied from class: Agent
      Cambia el entorno en el que se sitúa el agente.

      Este método debería sobrecargarse en las clases derivadas que contengan información acerca del camino a seguir por el agente (un plan) de forma que éste siga siendo coherente tras el cambio de laberinto.
      Overrides:
      setEnvironment in class Agent
      Parameters:
      env - Entorno donde colocar el agente.
    • 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.
    • doMovement

      public void doMovement(Direction dir)
      Description copied from class: Agent
      Hace que el agente realice el movimiento especificado, sin comprobar que se trata de un movimiento válido.

      La clase base sólo cambia la posición del agente, si se desea más funcionalidad, se debe sobrecargar en las clases derivadas.
      Overrides:
      doMovement in class Agent
      Parameters:
      dir - Dirección hacia la que mover el agente.
    • 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