Package weka.classifiers.bayes.net.search.global

# Class SimulatedAnnealing

java.lang.Object
weka.classifiers.bayes.net.search.SearchAlgorithm
weka.classifiers.bayes.net.search.global.GlobalScoreSearchAlgorithm
weka.classifiers.bayes.net.search.global.SimulatedAnnealing

All Implemented Interfaces:
  `Serializable`, `OptionHandler`, `RevisionHandler`, `TechnicalInformationHandler`

public class SimulatedAnnealing extends GlobalScoreSearchAlgorithm implements TechnicalInformationHandler
This Bayes Network learning algorithm uses the general purpose search method of simulated annealing to find a well scoring network structure.
For more information see:
R.R. Bouckaert (1995). Bayesian Belief Networks: from Construction to Inference. Utrecht, Netherlands.

BibTeX:

     @phdthesis{Bouckaert1995,
        address = {Utrecht, Netherlands},
        author = {R.R. Bouckaert},
        institution = {University of Utrecht},
        title = {Bayesian Belief Networks: from Construction to Inference},
        year = {1995}
     }

Valid options are:

     -A <float>
      Start temperature

     -U <integer>
      Number of runs

     -D <float>
      Delta temperature

     -R <seed>
      Random number seed

     -mbc
      Applies a Markov Blanket correction to the network structure,
      after a network structure is learned. This ensures that all
      nodes in the network are part of the Markov blanket of the
      classifier node.

     -S [LOO-CV|k-Fold-CV|Cumulative-CV]
      Score type (LOO-CV,k-Fold-CV,Cumulative-CV)

     -Q
      Use probabilistic or 0/1 scoring.
      (default probabilistic scoring)

Version:
  $Revision: 1.6 $
Author:
  Remco Bouckaert (rrb@xm.co.nz)
See Also:
  - Serialized Form

## Field Summary

### Fields inherited from class weka.classifiers.bayes.net.search.global.GlobalScoreSearchAlgorithm

`TAGS_CV_TYPE`

## Constructor Summary

Constructors
Constructor
Description
`SimulatedAnnealing()`

## Method Summary

Modifier and Type
Method
Description
`String`
`deltaTipText()`
`double`
`getDelta()`
`String[]`
`getOptions()`
Gets the current settings of the search algorithm.
`String`
`getRevision()`
Returns the revision string.
`int`
`getRuns()`
`int`
`getSeed()`
`TechnicalInformation`
`getTechnicalInformation()`
Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on.
`double`
`getTStart()`
`String`
`globalInfo()`
This will return a string describing the classifier.
`Enumeration`
`listOptions()`
Returns an enumeration describing the available options.
`String`
`runsTipText()`
`void`
`search(BayesNet bayesNet, Instances instances)`
`String`
`seedTipText()`
`void`
`setDelta(double fDelta)`
Sets the m_fDelta.
`void`
`setOptions(String[] options)`
Parses a given list of options.
`void`
`setRuns(int nRuns)`
Sets the m_nRuns.
`void`
`setSeed(int nSeed)`
Sets the random number seed
`void`
`setTStart(double fTStart)`
Sets the m_fTStart.
`String`
`TStartTipText()`

### Methods inherited from class weka.classifiers.bayes.net.search.global.GlobalScoreSearchAlgorithm

`calcScore, calcScoreWithExtraParent, calcScoreWithMissingParent, calcScoreWithReversedParent, cumulativeCV, CVTypeTipText, getCVType, getMarkovBlanketClassifier, getUseProb, kFoldCV, leaveOneOutCV, markovBlanketClassifierTipText, setCVType, setMarkovBlanketClassifier, setUseProb, useProbTipText`

### Methods inherited from class weka.classifiers.bayes.net.search.SearchAlgorithm

`buildStructure, initAsNaiveBayesTipText, maxNrOfParentsTipText, toString`

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Constructor Details

### SimulatedAnnealing

public SimulatedAnnealing()

## Method Details

### getTechnicalInformation

public TechnicalInformation getTechnicalInformation()
Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on.

Specified by:
  `getTechnicalInformation` in interface `TechnicalInformationHandler`
Returns:
  the technical information about this class

### search

public void search(BayesNet bayesNet, Instances instances) throws Exception

Parameters:
  `bayesNet` - the bayes net to use
  `instances` - the data to use
Throws:
  `Exception` - if something goes wrong

### getDelta

public double getDelta()

Returns:
  double

### getTStart

public double getTStart()

Returns:
  double

### getRuns

public int getRuns()

Returns:
  int

### setDelta

public void setDelta(double fDelta)
Sets the m_fDelta.

Parameters:
  `fDelta` - The m_fDelta to set

### setTStart

public void setTStart(double fTStart)
Sets the m_fTStart.

Parameters:
  `fTStart` - The m_fTStart to set

### setRuns

public void setRuns(int nRuns)
Sets the m_nRuns.

Parameters:
  `nRuns` - The m_nRuns to set

### getSeed

public int getSeed()

Returns:
  random number seed

### setSeed

public void setSeed(int nSeed)
Sets the random number seed

Parameters:
  `nSeed` - The number of the seed to set

### listOptions

public Enumeration listOptions()
Returns an enumeration describing the available options.

Specified by:
  `listOptions` in interface `OptionHandler`
Overrides:
  `listOptions` in class `GlobalScoreSearchAlgorithm`
Returns:
  an enumeration of all the available options.

### setOptions

public void setOptions(String[] options) throws Exception
Parses a given list of options.

Valid options are:

     -A <float>
      Start temperature

     -U <integer>
      Number of runs

     -D <float>
      Delta temperature

     -R <seed>
      Random number seed

     -mbc
      Applies a Markov Blanket correction to the network structure,
      after a network structure is learned. This ensures that all
      nodes in the network are part of the Markov blanket of the
      classifier node.

     -S [LOO-CV|k-Fold-CV|Cumulative-CV]
      Score type (LOO-CV,k-Fold-CV,Cumulative-CV)

     -Q
      Use probabilistic or 0/1 scoring.
      (default probabilistic scoring)

Specified by:
  `setOptions` in interface `OptionHandler`
Overrides:
  `setOptions` in class `GlobalScoreSearchAlgorithm`
Parameters:
  `options` - the list of options as an array of strings
Throws:
  `Exception` - if an option is not supported

### getOptions

public String[] getOptions()
Gets the current settings of the search algorithm.

Specified by:
  `getOptions` in interface `OptionHandler`
Overrides:
  `getOptions` in class `GlobalScoreSearchAlgorithm`
Returns:
  an array of strings suitable for passing to setOptions

### globalInfo

public String globalInfo()
This will return a string describing the classifier.

Overrides:
  `globalInfo` in class `GlobalScoreSearchAlgorithm`
Returns:
  The string.

### TStartTipText

public String TStartTipText()

Returns:
  a string to describe the TStart option.

### runsTipText

public String runsTipText()

Returns:
  a string to describe the Runs option.

### deltaTipText

public String deltaTipText()

Returns:
  a string to describe the Delta option.

### seedTipText

public String seedTipText()

Returns:
  a string to describe the Seed option.

### getRevision

public String getRevision()
Returns the revision string.

Specified by:
  `getRevision` in interface `RevisionHandler`
Overrides:
  `getRevision` in class `GlobalScoreSearchAlgorithm`
Returns:
  the revision