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

ai.libs.jaicore.search.probleminputs.IMDP Maven / Gradle / Ivy

package ai.libs.jaicore.search.probleminputs;

import java.util.Collection;
import java.util.Map;
import java.util.Random;

import org.api4.java.common.attributedobjects.ObjectEvaluationFailedException;

public interface IMDP> {

	public N getInitState();

	public boolean isMaximizing();

	public Collection getApplicableActions(N state) throws InterruptedException;

	public boolean isActionApplicableInState(N state, A action) throws InterruptedException; // important short cut to avoid computation of all action

	public A getUniformlyRandomApplicableAction(N state, Random random) throws InterruptedException; // this is to enable quick queries for applicable actions if we are gonna take a random one anyway

	public boolean isTerminalState(N state) throws InterruptedException;

	public Map getProb(N state, A action) throws InterruptedException;

	public double getProb(N state, A action, N successor) throws InterruptedException;

	public V getScore(N state, A action, N successor) throws InterruptedException, ObjectEvaluationFailedException;
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy