public final class DefaultEvidence extends Object implements Evidence
query.
 
 Evidence is always associated with a particular network, however if necessary can be detached or attached to an instance of an inference engine. This has the follwing advantages: - Evidence can be set before an inference engine is created, or retained when an inference engine is destroyed. - Evidence can be switched between inference engines. - An inference engine can switch between different evidence instances.| Constructor and Description | 
|---|
DefaultEvidence(DefaultEvidence evidence)
Initializes a new instance of the  
DefaultEvidence class, copying data from an existing DefaultEvidence object. | 
DefaultEvidence(Evidence evidence)
Initializes a new instance of the  
DefaultEvidence class, and copies the evidence from another instance. | 
DefaultEvidence(Network network)
Initializes a new instance of the  
DefaultEvidence class, with the target Bayesian network. | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
beginUpdate()
Disables change notifications (if present), until  
Evidence.endUpdate() is called. | 
void | 
clear()
Clears any evidence on all variables. 
 | 
void | 
clear(Node node)
Clears evidence on a node's variables. 
 | 
void | 
clear(Node node,
     Integer time)
Clears evidence on a node's single variable. 
 | 
void | 
clear(Variable variable)
Clears any evidence on a variable. 
 | 
void | 
clear(Variable variable,
     Integer time)
Clears evidence on a variable at the specified time. 
 | 
void | 
copy(Evidence evidence)
Replaces the current evidence, with that from another  
Evidence instance. | 
void | 
copy(Evidence evidence,
    Variable variable)
Replaces the current evidence for an individual variable, with that from another  
Evidence instance. | 
void | 
copy(Evidence evidence,
    Variable variable,
    Integer time)
Replaces the current evidence for an individual variable at a specific time, with that from another  
Evidence instance. | 
void | 
endUpdate()
Enables change notifications (if available). 
 | 
Double | 
get(Node node)
Gets the hard evidence value for a particular node's variable, or returns null if the  
EvidenceType equals EvidenceType.NONE or EvidenceType.SOFT. | 
void | 
get(Node node,
   Double[] destination,
   int destinationStart,
   int startTime,
   int count)
Gets the evidence for a node's single temporal variable. 
 | 
Double | 
get(Node node,
   Integer time)
Gets the evidence for a node with a single variable at the specified time. 
 | 
Double | 
get(Variable variable)
Gets the hard evidence for a discrete variable or continuous variable, or returns null if the  
EvidenceType equals EvidenceType.NONE or EvidenceType.SOFT. | 
void | 
get(Variable variable,
   Double[] destination,
   int destinationStart,
   int startTime,
   int count)
Gets the evidence for a temporal variable. 
 | 
Double | 
get(Variable variable,
   Integer time)
Gets the evidence for a discrete variable at the specified time. 
 | 
EvidenceType | 
getEvidenceType(Node node)
Returns the type of evidence currently set for a node with a single variable. 
 | 
EvidenceType | 
getEvidenceType(Node node,
               Integer time)
Returns the type of evidence currently set for a node with a single variable at a given time. 
 | 
EvidenceType | 
getEvidenceType(Variable variable)
Returns the type of evidence currently set for a variable (if any). 
 | 
EvidenceType | 
getEvidenceType(Variable variable,
               Integer time)
Returns the type of evidence currently set for a variable at a given time. 
 | 
EvidenceTypes | 
getEvidenceTypes(Node node)
Gets the type of evidence (if any) and whether or not it is an intervention (do-operator). 
 | 
EvidenceTypes | 
getEvidenceTypes(Node node,
                Integer time)
Gets the type of evidence (if any) and whether or not it is an intervention (do-operator). 
 | 
EvidenceTypes | 
getEvidenceTypes(Variable variable)
Gets the type of evidence (if any) and whether or not it is an intervention (do-operator). 
 | 
EvidenceTypes | 
getEvidenceTypes(Variable variable,
                Integer time)
Gets the type of evidence (if any) and whether or not it is an intervention (do-operator). 
 | 
double | 
getLogWeight()
Gets the natural logarithm of  
Evidence.getWeight(). | 
Integer | 
getMaxTime()
Gets the maximum time containing evidence. 
 | 
Integer | 
getMaxTime(Variable variable)
Gets the maximum time containing evidence for a variable. 
 | 
Network | 
getNetwork()
Gets the Bayesian network that is the the target of the evidence. 
 | 
Integer | 
getState(Node node)
Gets the hard evidence state for node with a single variable, or returns null if the  
EvidenceType equals EvidenceType.NONE or EvidenceType.SOFT. | 
Integer | 
getState(Node node,
        Integer time)
Gets the hard evidence state for node with a single variable, or returns null if the  
EvidenceType equals EvidenceType.NONE or EvidenceType.SOFT. | 
Integer | 
getState(Variable variable)
Gets the hard evidence state for a particular variable, or returns null if the  
EvidenceType equals EvidenceType.NONE or EvidenceType.SOFT. | 
Integer | 
getState(Variable variable,
        Integer time)
Gets the hard evidence state for a particular variable, or returns null if the  
EvidenceType equals EvidenceType.NONE or EvidenceType.SOFT. | 
void | 
getStates(Node node,
         double[] buffer)
Fills out a buffer containing the soft evidence for a node with a single variable. 
 | 
void | 
getStates(Node node,
         double[] buffer,
         Integer time)
Fills out a buffer containing the soft evidence for a node with a single variable at a specified time. 
 | 
void | 
getStates(Table table)
Fills out a table containing the soft evidence for a particular variable. 
 | 
void | 
getStates(Variable variable,
         double[] buffer)
Fills out a buffer containing the soft evidence for a particular variable. 
 | 
void | 
getStates(Variable variable,
         double[] buffer,
         Integer time)
Fills out a buffer containing the soft evidence for a particular variable at a specified time. 
 | 
void | 
getVariables(Variable[] buffer)
Fills out a buffer with all variables that have either hard or soft evidence. 
 | 
double | 
getWeight()
Gets a weight that can be applied to the evidence. 
 | 
void | 
load(InputStream input)
Loads evidence from the specified stream. 
 | 
void | 
load(String fileName)
Loads evidence from the specified file. 
 | 
void | 
loadFromString(String value)
Loads evidence from a string using UTF-8 encoding. 
 | 
void | 
loadFromString(String value,
              String charSetName)
Loads evidence from a string using the specified encoding. 
 | 
void | 
save(OutputStream output)
Saves the evidence to the specified stream. 
 | 
void | 
save(String fileName)
Saves the specified to the specified file. 
 | 
String | 
saveToString()
Saves evidence to a string, with UTF-8 encoding. 
 | 
String | 
saveToString(String charSetName)
Saves evidence to a string, with the specified encoding. 
 | 
void | 
set(Node node,
   Double value)
Sets a node's variable to a particular value (hard evidence). 
 | 
void | 
set(Node node,
   Double[] source,
   int sourceStart,
   int startTime,
   int count)
Sets temporal evidence on a node with a single variable. 
 | 
void | 
set(Node node,
   Double value,
   Integer time)
Sets evidence on a node's single variable at a specified time. 
 | 
void | 
set(Variable variable,
   Double value)
Sets a variable to a particular value (hard evidence). 
 | 
void | 
set(Variable variable,
   Double[] source,
   int sourceStart,
   int startTime,
   int count)
Sets temporal evidence on a variable. 
 | 
void | 
set(Variable variable,
   Double value,
   Integer time)
Sets evidence on a variable at a specified time. 
 | 
void | 
set(Variable variable,
   Double value,
   Integer time,
   InterventionType interventionType)
Sets evidence on the variable, in the form of an intervention (do-operator). 
 | 
void | 
setLogWeight(double value)
Sets the natural logarithm of  
Evidence.getWeight(). | 
void | 
setState(Node node,
        Integer state)
Sets evidence on a node with a single discrete variable to a particular state (hard evidence). 
 | 
void | 
setState(Node node,
        Integer state,
        Integer time)
Sets evidence on a node with a single discrete variable to a particular state (hard evidence) specifiying a time if the node is temporal. 
 | 
void | 
setState(State state)
Sets evidence on a discrete state (hard evidence). 
 | 
void | 
setState(State state,
        Integer time)
Sets evidence on a discrete state (hard evidence) at a particular time (zero based). 
 | 
void | 
setState(State state,
        Integer time,
        InterventionType interventionType)
Sets evidence on a discrete state (hard evidence), in the form of an intervention (do-operator). 
 | 
void | 
setState(Variable variable,
        Integer state)
Sets a discrete variable to a particular state (hard evidence). 
 | 
void | 
setState(Variable variable,
        Integer state,
        Integer time)
Sets a discrete variable to a particular state (hard evidence), specifiying a time if the state belongs to a variable whose node is temporal. 
 | 
void | 
setStates(Node node,
         double[] values)
Sets soft evidence for a discrete node with a single variable. 
 | 
void | 
setStates(Node node,
         double[] values,
         Integer time)
Sets soft evidence for a discrete node with a single variable, at a specified time. 
 | 
void | 
setStates(Variable variable,
         double[] values)
Sets soft evidence for a particular discrete variable. 
 | 
void | 
setStates(Variable variable,
         double[] values,
         Integer time)
Sets soft evidence for a particular discrete variable at a specified time. 
 | 
void | 
setWeight(double value)
Sets a weight that can be applied to the evidence. 
 | 
int | 
size()
Gets the count of variables with either hard, soft or temporal evidence set. 
 | 
public DefaultEvidence(Network network)
DefaultEvidence class, with the target Bayesian network.network - The target Network.public DefaultEvidence(Evidence evidence)
DefaultEvidence class, and copies the evidence from another instance.evidence - The evidence to copy.public DefaultEvidence(DefaultEvidence evidence)
DefaultEvidence class, copying data from an existing DefaultEvidence object.evidence - The evidence.public int size()
public Network getNetwork()
getNetwork in interface EvidenceNetwork.public double getWeight()
 Note that setting the weight to anything but 1, will effect the QueryOutput.getLogLikelihood() statistic.
public void setWeight(double value)
 Note that setting the weight to anything but 1, will effect the QueryOutput.getLogLikelihood() statistic.
public double getLogWeight()
Evidence.getWeight().getLogWeight in interface Evidencepublic void setLogWeight(double value)
Evidence.getWeight().setLogWeight in interface Evidencepublic void beginUpdate()
Evidence.endUpdate() is called.
 
  Calls to Evidence.beginUpdate() can be nested, in which case notifications only continue after the final call to Evidence.endUpdate().beginUpdate in interface Evidencepublic void clear(Variable variable, Integer time)
public void clear(Variable variable)
public void clear(Node node)
clear in interface Evidencenode - The node whose variables you want to clear evidence on.NullPointerException - [node] is null.public void clear()
public void copy(Evidence evidence)
Evidence instance.public void copy(Evidence evidence, Variable variable)
Evidence instance.
 
 For temporal variables, evidence is copied from the source at all times.public void copy(Evidence evidence, Variable variable, Integer time)
Evidence instance.public void endUpdate()
Evidence.beginUpdate() to disable notifications.public Double get(Variable variable)
EvidenceType equals EvidenceType.NONE or EvidenceType.SOFT.get in interface Evidencevariable - The discrete or continuous variable.EvidenceType does not equal EvidenceType.HARD.public Double get(Variable variable, Integer time)
public Double get(Node node, Integer time)
public void get(Variable variable, Double[] destination, int destinationStart, int startTime, int count)
get in interface Evidencevariable - The temporal variable.destination - The destination buffer which will be filled with the evidence values.destinationStart - The position in the buffer to start copying.startTime - The time to start copying from.count - The number of evidence values to copy.public void get(Node node, Double[] destination, int destinationStart, int startTime, int count)
get in interface Evidencenode - A node with a single temporal variable.destination - The destination buffer which will be filled with the evidence values.destinationStart - The position in the buffer to start copying.startTime - The time to start copying from.count - The number of evidence values to copy.public Double get(Node node)
EvidenceType equals EvidenceType.NONE or EvidenceType.SOFT.get in interface Evidencenode - A node with a single variable in question.EvidenceType does not equal EvidenceType.HARD.public EvidenceType getEvidenceType(Variable variable)
getEvidenceType in interface Evidencevariable - The variable in question.EvidenceType.public EvidenceType getEvidenceType(Node node)
getEvidenceType in interface Evidencenode - The node in question.EvidenceType.public EvidenceType getEvidenceType(Node node, Integer time)
getEvidenceType in interface Evidencenode - The node in question.time - The time at which evidence is set.  Can be null.EvidenceType.public EvidenceType getEvidenceType(Variable variable, Integer time)
getEvidenceType in interface Evidencevariable - The variable in question.time - The time at which evidence is set.  Can be null.EvidenceType.public EvidenceTypes getEvidenceTypes(Variable variable)
getEvidenceTypes in interface Evidencevariable - The variable in question.EvidenceTypes.public EvidenceTypes getEvidenceTypes(Node node)
getEvidenceTypes in interface Evidencenode - The node in question.EvidenceTypes.public EvidenceTypes getEvidenceTypes(Node node, Integer time)
getEvidenceTypes in interface Evidencenode - The node in question.time - The time at which evidence is set.  Can be null.EvidenceTypes.public EvidenceTypes getEvidenceTypes(Variable variable, Integer time)
getEvidenceTypes in interface Evidencevariable - The variable in question.time - The time at which evidence is set.  Can be null.EvidenceTypes.public Integer getMaxTime(Variable variable)
getMaxTime in interface Evidencevariable - The variable to check.public Integer getMaxTime()
getMaxTime in interface Evidencepublic Integer getState(Variable variable)
EvidenceType equals EvidenceType.NONE or EvidenceType.SOFT.getState in interface Evidencevariable - The variable.State with hard evidence set, or null if the EvidenceType does not equal EvidenceType.HARD..public Integer getState(Variable variable, Integer time)
EvidenceType equals EvidenceType.NONE or EvidenceType.SOFT.getState in interface Evidencevariable - The variable.time - Time at which to retrieve evidence, if the variable belongs to a temporal node, otherwise null.State with hard evidence set, or null if the EvidenceType does not equal EvidenceType.HARD..public Integer getState(Node node)
EvidenceType equals EvidenceType.NONE or EvidenceType.SOFT.getState in interface Evidencenode - The node with a single discrete variable.State with hard evidence set, or null if the EvidenceType does not equal EvidenceType.HARD..public Integer getState(Node node, Integer time)
EvidenceType equals EvidenceType.NONE or EvidenceType.SOFT.getState in interface Evidencenode - The node with a single discrete variable.time - Time at which to retrieve evidence, if the node is temporal, otherwise null.State with hard evidence set, or null if the EvidenceType does not equal EvidenceType.HARD..public void getStates(Variable variable, double[] buffer)
Get.
 
  The resulting values will depend on the current EvidenceType for the variable:EvidenceType.NONE - All values will equal 1.EvidenceType.HARD - All values will equal 0, except at the hard evidence state, where the value will equal 1.EvidenceType.NONE - The soft evidence values will be used.public void getStates(Node node, double[] buffer)
Get.
 
  The resulting values will depend on the current EvidenceType for the variable:EvidenceType.NONE - All values will equal 1.EvidenceType.HARD - All values will equal 0, except at the hard evidence state, where the value will equal 1.EvidenceType.NONE - The soft evidence values will be used.public void getStates(Table table)
Get.
 
  The resulting values will depend on the current EvidenceType for the variable:EvidenceType.NONE - All values will equal 1.EvidenceType.HARD - All values will equal 0, except at the hard evidence state, where the value will equal 1.EvidenceType.NONE - The soft evidence values will be used.public void getStates(Node node, double[] buffer, Integer time)
Get.
 
  The resulting values will depend on the current EvidenceType for the variable:EvidenceType.NONE - All values will equal 1.EvidenceType.HARD - All values will equal 0, except at the hard evidence state, where the value will equal 1.EvidenceType.NONE - The soft evidence values will be used.public void getStates(Variable variable, double[] buffer, Integer time)
Get.
 
  The resulting values will depend on the current EvidenceType for the variable:EvidenceType.NONE - All values will equal 1.EvidenceType.HARD - All values will equal 0, except at the hard evidence state, where the value will equal 1.EvidenceType.NONE - The soft evidence values will be used.public void getVariables(Variable[] buffer)
Evidence.size().getVariables in interface Evidencebuffer - A container for any variables with evidence.  It must have length equal to or greater than the current Evidence.size().public void load(InputStream input) throws XMLStreamException
load in interface Evidenceinput - The input stream.XMLStreamExceptionpublic void load(String fileName) throws IOException, XMLStreamException
load in interface EvidencefileName - Name of the file.IOExceptionXMLStreamExceptionpublic void save(OutputStream output) throws XMLStreamException
save in interface Evidenceoutput - The output stream.XMLStreamExceptionpublic void save(String fileName) throws IOException, XMLStreamException
save in interface EvidencefileName - Name of the file.IOExceptionXMLStreamExceptionpublic String saveToString(String charSetName) throws XMLStreamException
saveToString in interface EvidencecharSetName - The encoding to use.XMLStreamExceptionpublic String saveToString() throws XMLStreamException
saveToString in interface EvidenceXMLStreamExceptionpublic void loadFromString(String value, String charSetName) throws UnsupportedEncodingException, XMLStreamException
loadFromString in interface Evidencevalue - The persisted string value of the evidence.charSetName - The encoding the evidence was originally saved in.UnsupportedEncodingExceptionXMLStreamExceptionpublic void loadFromString(String value) throws UnsupportedEncodingException, XMLStreamException
loadFromString in interface Evidencevalue - The persisted string value of the evidemce.UnsupportedEncodingExceptionXMLStreamExceptionpublic void set(Variable variable, Double[] source, int sourceStart, int startTime, int count)
public void set(Node node, Double[] source, int sourceStart, int startTime, int count)
public void set(Variable variable, Double value)
public void set(Node node, Double value, Integer time)
public void set(Variable variable, Double value, Integer time)
public void set(Variable variable, Double value, Integer time, InterventionType interventionType)
set in interface Evidencevariable - The variable to set evidence on.value - The value to set, or null to clear the evidence.time - The time at which to set evidence, if the node is temporal, otherwise null.interventionType - Whether or not the evidence is an intervention.public void set(Node node, Double value)
public void setState(Variable variable, Integer state)
public void setState(Variable variable, Integer state, Integer time)
setState in interface Evidencevariable - The discrete variable to set evidence on.state - The zero based index of the state to set, or null to clear the evidence.time - The time at which to set evidence, if the state belongs to a variable whose node is temporal, otherwise null.public void setState(State state)
public void setState(State state, Integer time, InterventionType interventionType)
public void setState(State state, Integer time)
public void setState(Node node, Integer state)
public void setState(Node node, Integer state, Integer time)
public void setStates(Variable variable, double[] values)
EvidenceType will not be EvidenceType.SOFT.public void setStates(Node node, double[] values)
EvidenceType will not be EvidenceType.SOFT.public void setStates(Node node, double[] values, Integer time)
EvidenceType will not be EvidenceType.SOFT.public void setStates(Variable variable, double[] values, Integer time)
EvidenceType will not be EvidenceType.SOFT.Copyright © 2021. All rights reserved.