All Downloads are FREE. Search and download functionalities are using the official Maven repository.

main.java.burlap.mdp.singleagent.pomdp.observations.ObservationFunction Maven / Gradle / Ivy

Go to download

The Brown-UMBC Reinforcement Learning and Planning (BURLAP) Java code library is for the use and development of single or multi-agent planning and learning algorithms and domains to accompany them. The library uses a highly flexible state/observation representation where you define states with your own Java classes, enabling support for domains that discrete, continuous, relational, or anything else. Planning and learning algorithms range from classic forward search planning to value-function-based stochastic planning and learning algorithms.

The newest version!
package burlap.mdp.singleagent.pomdp.observations;

import burlap.mdp.core.action.Action;
import burlap.mdp.core.state.State;


/**
 * Defines the observation function and observations associated with a POMDP domain ({@link burlap.mdp.singleagent.pomdp.PODomain}).
 * Requires two methods: {@link #probability(State, State, Action)} and {@link #sample(State, Action)}.
 * The former defines the probability mass/density function for an observation given a hidden state and action that
 * led the hidden state. The latter samples and observation given a hidden state and action that led to the hidden state.
 */
public interface ObservationFunction {


	/**
	 * Returns the probability that an observation will be observed conditioned on the MDP state and previous action taken that led to the state.
	 * @param observation the observation, represented by a {@link State}
	 * @param state The true MDP state that generated the observation.
	 * @param action the action that led to the MDP state and which generated the observation
	 * @return the probability of observing the observation.
	 */
	double probability(State observation, State state, Action action);



	/**
	 * Samples an observation given the true MDP state and action taken in the previous step that led to the MDP state.
	 * @param state the true MDP state
	 * @param action the action that led to the MDP state
	 * @return an observation represented with a {@link State}.
	 */
	State sample(State state, Action action);






}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy