public RandomVariable predict(RandomVariable aBelief, String action)
{
RandomVariable newBelief = aBelief.duplicate();
Matrix beliefMatrix = aBelief.asMatrix();
Matrix transitionMatrix = _transitionModel.asMatrix(action);
Matrix predicted = transitionMatrix.transpose().times(beliefMatrix);
newBelief.updateFrom(predicted);
return newBelief;
}