
aima.core.probability.hmm.HiddenMarkovModel 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.probability.hmm;
import java.util.List;
import java.util.Map;
import aima.core.probability.CategoricalDistribution;
import aima.core.probability.RandomVariable;
import aima.core.probability.proposition.AssignmentProposition;
import aima.core.util.math.Matrix;
/**
* Artificial Intelligence A Modern Approach (3rd Edition): page 578.
*
*
* The hidden Markov model, or HMM. An HMM is a temporal probabilistic model in
* which the state of the process is described by a single discrete random
* variable. The possible values of the variable are the possible states of the
* world.
*
* @author Ciaran O'Reilly
* @author Ravi Mohan
*
*/
public interface HiddenMarkovModel {
/**
* Return the single discrete random variable used to describe the process
* state.
*
* @return the single discrete random variable used to describe the process
* state.
*/
RandomVariable getStateVariable();
/**
* Return the transition model:
* P(Xt | Xt-1)
* is represented by an S * S matrix T where
* Tij = P(Xt = j | Xt-1 = i).
*
* @return the transition model in Matrix form.
*/
Matrix getTransitionModel();
/**
* Return the sensor model in matrix form:
* P(et | Xt = i) for each state i.
* For mathematical convenience we place each of these values into an S * S
* diagonal matrix.
*
* @return the sensor model in matrix form.
*/
Map
© 2015 - 2025 Weber Informatics LLC | Privacy Policy