edu::tum::cs::bayesnets::inference::Sampler Class Reference

Inheritance diagram for edu::tum::cs::bayesnets::inference::Sampler:
Inheritance graph
[legend]

List of all members.

Public Member Functions

String getAlgorithmName ()
double[] getConditionalDistribution (BeliefNode node, int[] nodeDomainIndices)
int getNodeIndex (BeliefNode node)
ParameterHandler getParameterHandler ()
double getSamplingTime ()
SampledDistribution infer () throws Exception
synchronized SampledDistribution pollResults () throws CloneNotSupportedException
 Sampler (BeliefNetworkEx bn) throws Exception
void setConfidenceIntervalSizeThreshold (double t)
void setDebugMode (boolean active)
void setEvidence (int[] evidenceDomainIndices) throws Exception
void setInfoInterval (int infoInterval)
void setMaxTrials (int maxTrials)
void setNumSamples (int numSamples)
void setQueryVars (Collection< Integer > queryVars)
void setRandomSeed (int seed)
void setSkipFailedSteps (boolean canSkip)
void setVerbose (boolean verbose)

Static Public Member Functions

static int sample (Collection< Double > distribution, double sum, Random generator)
static int sample (Collection< Double > distribution, Random generator)
static int sample (double[] distribution, double sum, Random generator)
static int sample (double[] distribution, Random generator)

Public Attributes

BeliefNetworkEx bn
double convergenceCheckInterval = 100
boolean debug = false
SampledDistribution dist
int[] evidenceDomainIndices
Random generator
int infoInterval = 100
HashMap< BeliefNode, Integer > nodeIndices
BeliefNode[] nodes
int numSamples = 1000
double samplingTime

Protected Member Functions

abstract SampledDistribution _infer () throws Exception
synchronized void addSample (WeightedSample s) throws Exception
boolean converged () throws Exception
void createDistribution () throws Exception
double getCPTProbability (BeliefNode node, int[] nodeDomainIndices)
void report (String s)
int sampleForward (BeliefNode node, int[] nodeDomainIndices)

Protected Attributes

Double confidenceIntervalSizeThreshold = null
int maxTrials = 5000
PrintStream out
ParameterHandler paramHandler
Collection< Integer > queryVars = null
StringBuffer report = new StringBuffer()
boolean skipFailedSteps = false
boolean verbose

Detailed Description

Definition at line 16 of file bayesnets/inference/Sampler.java.


Constructor & Destructor Documentation

edu::tum::cs::bayesnets::inference::Sampler::Sampler ( BeliefNetworkEx  bn  )  throws Exception [inline]

Member Function Documentation

abstract SampledDistribution edu::tum::cs::bayesnets::inference::Sampler::_infer (  )  throws Exception [protected, pure virtual]
synchronized void edu::tum::cs::bayesnets::inference::Sampler::addSample ( WeightedSample  s  )  throws Exception [inline, protected]

Definition at line 68 of file bayesnets/inference/Sampler.java.

boolean edu::tum::cs::bayesnets::inference::Sampler::converged (  )  throws Exception [inline, protected]

Definition at line 83 of file bayesnets/inference/Sampler.java.

void edu::tum::cs::bayesnets::inference::Sampler::createDistribution (  )  throws Exception [inline, protected]

Definition at line 62 of file bayesnets/inference/Sampler.java.

String edu::tum::cs::bayesnets::inference::Sampler::getAlgorithmName (  )  [inline]
double [] edu::tum::cs::bayesnets::inference::Sampler::getConditionalDistribution ( BeliefNode  node,
int[]  nodeDomainIndices 
) [inline]

Definition at line 270 of file bayesnets/inference/Sampler.java.

double edu::tum::cs::bayesnets::inference::Sampler::getCPTProbability ( BeliefNode  node,
int[]  nodeDomainIndices 
) [inline, protected]

gets the CPT entry of the given node for the configuration of parents that is provided in the array of domain indices

Parameters:
node 
nodeDomainIndices domain indices for each node in the network (only the parents of 'node' are required to be set)
Returns:
the probability value

Definition at line 188 of file bayesnets/inference/Sampler.java.

int edu::tum::cs::bayesnets::inference::Sampler::getNodeIndex ( BeliefNode  node  )  [inline]

Definition at line 290 of file bayesnets/inference/Sampler.java.

ParameterHandler edu::tum::cs::bayesnets::inference::Sampler::getParameterHandler (  )  [inline]
double edu::tum::cs::bayesnets::inference::Sampler::getSamplingTime (  )  [inline]
Returns:
the time taken for the sampling process in seconds

Definition at line 235 of file bayesnets/inference/Sampler.java.

SampledDistribution edu::tum::cs::bayesnets::inference::Sampler::infer (  )  throws Exception [inline]
synchronized SampledDistribution edu::tum::cs::bayesnets::inference::Sampler::pollResults (  )  throws CloneNotSupportedException [inline]

polls the results during time-limited inference

Returns:
Exceptions:
CloneNotSupportedException 

Implements edu::tum::cs::bayesnets::inference::ITimeLimitedInference.

Reimplemented in edu::tum::cs::srl::bayesnets::inference::BNSampler, and edu::tum::cs::srl::bayesnets::inference::MCSAT.

Definition at line 112 of file bayesnets/inference/Sampler.java.

void edu::tum::cs::bayesnets::inference::Sampler::report ( String  s  )  [inline, protected]

adds a string to the report that is displayed after the inference procedure has returned

Parameters:
s 

Definition at line 318 of file bayesnets/inference/Sampler.java.

static int edu::tum::cs::bayesnets::inference::Sampler::sample ( Collection< Double >  distribution,
double  sum,
Random  generator 
) [inline, static]

samples from the given distribuion

Parameters:
distribution 
sum the distribution's normalization constant
generator 
Returns:
the index of the value in the collection that was sampled (or -1 if the distribution is not well-defined)

Definition at line 169 of file bayesnets/inference/Sampler.java.

static int edu::tum::cs::bayesnets::inference::Sampler::sample ( Collection< Double >  distribution,
Random  generator 
) [inline, static]

samples from a distribution whose normalization constant is not known

Parameters:
distribution 
generator 
Returns:
the index of the value in the collection that was sampled (or -1 if the distribution is not well-defined)

Definition at line 155 of file bayesnets/inference/Sampler.java.

static int edu::tum::cs::bayesnets::inference::Sampler::sample ( double[]  distribution,
double  sum,
Random  generator 
) [inline, static]

samples from the given distribution

Parameters:
distribution 
sum the distribution's normalization constant
generator 
Returns:
the index of the value that was sampled (or -1 if the distribution is not well-defined)

Definition at line 138 of file bayesnets/inference/Sampler.java.

static int edu::tum::cs::bayesnets::inference::Sampler::sample ( double[]  distribution,
Random  generator 
) [inline, static]

samples from a distribution whose normalization constant is not known

Parameters:
distribution 
generator 
Returns:
the index of the value that was sampled (or -1 if the distribution is not well-defined)

Definition at line 124 of file bayesnets/inference/Sampler.java.

int edu::tum::cs::bayesnets::inference::Sampler::sampleForward ( BeliefNode  node,
int[]  nodeDomainIndices 
) [inline, protected]

samples forward, i.e. samples a value for 'node' given its parents

Parameters:
node the node for which to sample a value
nodeDomainIndices array of domain indices for all nodes in the network; the values for the parents of 'node' must be set already
Returns:
the index of the domain element of 'node' that is sampled, or -1 if sampling is impossible because all entries in the relevant column are 0

Definition at line 245 of file bayesnets/inference/Sampler.java.

void edu::tum::cs::bayesnets::inference::Sampler::setConfidenceIntervalSizeThreshold ( double  t  )  [inline]

Definition at line 103 of file bayesnets/inference/Sampler.java.

void edu::tum::cs::bayesnets::inference::Sampler::setDebugMode ( boolean  active  )  [inline]

Definition at line 294 of file bayesnets/inference/Sampler.java.

void edu::tum::cs::bayesnets::inference::Sampler::setEvidence ( int[]  evidenceDomainIndices  )  throws Exception [inline]
void edu::tum::cs::bayesnets::inference::Sampler::setInfoInterval ( int  infoInterval  )  [inline]

Definition at line 201 of file bayesnets/inference/Sampler.java.

void edu::tum::cs::bayesnets::inference::Sampler::setMaxTrials ( int  maxTrials  )  [inline]
void edu::tum::cs::bayesnets::inference::Sampler::setNumSamples ( int  numSamples  )  [inline]

Definition at line 197 of file bayesnets/inference/Sampler.java.

void edu::tum::cs::bayesnets::inference::Sampler::setQueryVars ( Collection< Integer >  queryVars  )  [inline]

Definition at line 79 of file bayesnets/inference/Sampler.java.

void edu::tum::cs::bayesnets::inference::Sampler::setRandomSeed ( int  seed  )  [inline]

Definition at line 217 of file bayesnets/inference/Sampler.java.

void edu::tum::cs::bayesnets::inference::Sampler::setSkipFailedSteps ( boolean  canSkip  )  [inline]
void edu::tum::cs::bayesnets::inference::Sampler::setVerbose ( boolean  verbose  )  [inline]

Definition at line 298 of file bayesnets/inference/Sampler.java.


Member Data Documentation

Definition at line 17 of file bayesnets/inference/Sampler.java.

Definition at line 36 of file bayesnets/inference/Sampler.java.

Definition at line 37 of file bayesnets/inference/Sampler.java.

Reimplemented in edu::tum::cs::bayesnets::inference::IJGP.

Definition at line 45 of file bayesnets/inference/Sampler.java.

Definition at line 18 of file bayesnets/inference/Sampler.java.

Definition at line 20 of file bayesnets/inference/Sampler.java.

general sampler setting: after how many samples to display a message that reports the current status

Definition at line 43 of file bayesnets/inference/Sampler.java.

Definition at line 19 of file bayesnets/inference/Sampler.java.

general sampler setting: how many samples to pull from the distribution

Definition at line 32 of file bayesnets/inference/Sampler.java.

Definition at line 27 of file bayesnets/inference/Sampler.java.

Definition at line 23 of file bayesnets/inference/Sampler.java.

Collection<Integer> edu::tum::cs::bayesnets::inference::Sampler::queryVars = null [protected]

Definition at line 24 of file bayesnets/inference/Sampler.java.

StringBuffer edu::tum::cs::bayesnets::inference::Sampler::report = new StringBuffer() [protected]

Definition at line 25 of file bayesnets/inference/Sampler.java.

Definition at line 38 of file bayesnets/inference/Sampler.java.

Reimplemented in edu::tum::cs::bayesnets::inference::IJGP.

Definition at line 26 of file bayesnets/inference/Sampler.java.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Enumerations


srldb
Author(s): Dominik Jain, Stefan Waldherr, Moritz Tenorth
autogenerated on Fri Jan 11 09:58:38 2013