Class SimulatedAnnealing

All Implemented Interfaces:
Serializable, OptionHandler, RevisionHandler, TechnicalInformationHandler

public class SimulatedAnnealing extends LocalScoreSearchAlgorithm 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 [BAYES|MDL|ENTROPY|AIC|CROSS_CLASSIC|CROSS_BAYES]
  Score type (BAYES, BDeu, MDL, ENTROPY and AIC)
 
Version:
$Revision: 11267 $
Author:
Remco Bouckaert (rrb@xm.co.nz)
See Also:
  • 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 network
      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<Option> listOptions()
      Returns an enumeration describing the available options.
      Specified by:
      listOptions in interface OptionHandler
      Overrides:
      listOptions in class LocalScoreSearchAlgorithm
      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 [BAYES|MDL|ENTROPY|AIC|CROSS_CLASSIC|CROSS_BAYES]
        Score type (BAYES, BDeu, MDL, ENTROPY and AIC)
       
      Specified by:
      setOptions in interface OptionHandler
      Overrides:
      setOptions in class LocalScoreSearchAlgorithm
      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 LocalScoreSearchAlgorithm
      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 LocalScoreSearchAlgorithm
      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 LocalScoreSearchAlgorithm
      Returns:
      the revision