aima.core.agent.EnvironmentView Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of aima-core Show documentation
Show all versions of aima-core Show documentation
AIMA-Java Core Algorithms from the book Artificial Intelligence a Modern Approach 3rd Ed.
package aima.core.agent;
/**
* Allows external applications/logic to view the interaction of Agent(s) with
* an Environment.
*
* @author Ravi Mohan
* @author Ciaran O'Reilly
* @author Mike Stampone
*/
public interface EnvironmentView {
/**
* A simple notification message from an object in the Environment.
*
* @param msg
* the message received.
*/
void notify(String msg);
/**
* Indicates an Agent has been added to the environment and what it
* perceives initially.
*
* @param agent
* the Agent just added to the Environment.
* @param resultingState
* the EnvironmentState that resulted from the Agent being added
* to the Environment.
*/
void agentAdded(Agent agent, EnvironmentState resultingState);
/**
* Indicates the Environment has changed as a result of an Agent's action.
*
* @param agent
* the Agent that performed the Action.
* @param action
* the Action the Agent performed.
* @param resultingState
* the EnvironmentState that resulted from the Agent's Action on
* the Environment.
*/
void agentActed(Agent agent, Action action, EnvironmentState resultingState);
}