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

aima.core.probability.bayes.Node Maven / Gradle / Ivy

Go to download

AIMA-Java Core Algorithms from the book Artificial Intelligence a Modern Approach 3rd Ed.

The newest version!
package aima.core.probability.bayes;

import java.util.Set;

import aima.core.probability.RandomVariable;

/**
 * Artificial Intelligence A Modern Approach (3rd Edition): page 511.
*
* A node is annotated with quantitative probability information. Each node * corresponds to a random variable, which may be discrete or continuous. If * there is an arrow from node X to node Y in a Bayesian Network, X is said to * be a parent of Y and Y is a child of X. Each node Xi has a * conditional probability distribution P(Xi | * Parents(Xi)) that quantifies the effect of the parents on the * node.
* * @author Ciaran O'Reilly */ public interface Node { /** * * @return the Random Variable this Node is for/on. */ RandomVariable getRandomVariable(); /** * * @return true if this Node has no parents. * * @see Node#getParents() */ boolean isRoot(); /** * * @return the parent Nodes for this Node. */ Set getParents(); /** * * @return the children Nodes for this Node. */ Set getChildren(); /** * Get this Node's Markov Blanket:
* 'A node is conditionally independent of all other nodes in the network, * given its parents, children, and children's parents - that is, given its * MARKOV BLANKET (AIMA3e pg, 517). * * @return this Node's Markov Blanket. */ Set getMarkovBlanket(); /** * * @return the Conditional Probability Distribution associated with this * Node. */ ConditionalProbabilityDistribution getCPD(); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy