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

burlap.statehashing.HashableState 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.statehashing;


import burlap.mdp.core.state.State;


/**
 * An interface for an object that computes hash codes and performs equality checks for states. Having a separate object
 * for these operations than the underlying state can be useful since it is often the case that different algorithms may want to pose abstractions
 * on the underlying state or handle equality in different ways than the raw {@link State} implementation.
 * Primarily, this is a marker interface to indicate that the object has implementations of
 * {@link Object#hashCode()} and {@link Object#equals(Object)}, but it does also require implementing the
 * {@link #s()} method, which should return the underlying state on which the hash and equals operations of this object are
 * performed.
 *
 * @author James MacGlashan
 *
 */
public interface HashableState{

	/**
	 * Returns the underlying source state that is hashed.
	 * @return The underlying source {@link State} that this object hashes and evaluates.
	 */
	State s();



}







© 2015 - 2024 Weber Informatics LLC | Privacy Policy