weka.classifiers.bayes.net.search.global
Class GeneticSearch

java.lang.Object
  extended byweka.classifiers.bayes.net.search.SearchAlgorithm
      extended byweka.classifiers.bayes.net.search.global.GlobalScoreSearchAlgorithm
          extended byweka.classifiers.bayes.net.search.global.GeneticSearch
All Implemented Interfaces:
OptionHandler, java.io.Serializable

public class GeneticSearch
extends GlobalScoreSearchAlgorithm

GeneticSearch is a crude implementation of genetic search for learning Bayesian network structures.

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

Field Summary
 
Fields inherited from class weka.classifiers.bayes.net.search.global.GlobalScoreSearchAlgorithm
TAGS_CV_TYPE
 
Constructor Summary
GeneticSearch()
           
 
Method Summary
 java.lang.String descendantPopulationSizeTipText()
           
 int getDescendantPopulationSize()
           
 java.lang.String[] getOptions()
          Gets the current settings of the search algorithm.
 int getPopulationSize()
           
 int getRuns()
           
 int getSeed()
           
 boolean getUseCrossOver()
           
 boolean getUseMutation()
           
 boolean getUseTournamentSelection()
           
 java.lang.String globalInfo()
          This will return a string describing the classifier.
 java.util.Enumeration listOptions()
          Returns an enumeration describing the available options.
 java.lang.String populationSizeTipText()
           
 java.lang.String runsTipText()
           
 java.lang.String seedTipText()
           
 void setDescendantPopulationSize(int iDescendantPopulationSize)
           
 void setOptions(java.lang.String[] options)
          Parses a given list of options.
 void setPopulationSize(int iPopulationSize)
           
 void setRuns(int nRuns)
          Sets the number of runs
 void setSeed(int nSeed)
          Sets the random number seed
 void setUseCrossOver(boolean bUseCrossOver)
           
 void setUseMutation(boolean bUseMutation)
           
 void setUseTournamentSelection(boolean bUseTournamentSelection)
           
 java.lang.String useCrossOverTipText()
           
 java.lang.String useMutationTipText()
           
 java.lang.String useTournamentSelectionTipText()
           
 
Methods inherited from class weka.classifiers.bayes.net.search.global.GlobalScoreSearchAlgorithm
calcScore, calcScoreWithExtraParent, calcScoreWithMissingParent, calcScoreWithReversedParent, cumulativeCV, CVTypeTipText, getCVType, getUseProb, kFoldCV, leaveOneOutCV, setCVType, setUseProb, useProbTipText
 
Methods inherited from class weka.classifiers.bayes.net.search.SearchAlgorithm
buildStructure, getMarkovBlanketClassifier, initAsNaiveBayesTipText, markovBlanketClassifierTipText, maxNrOfParentsTipText, setMarkovBlanketClassifier, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

GeneticSearch

public GeneticSearch()
Method Detail

getRuns

public int getRuns()
Returns:
number of runs

setRuns

public void setRuns(int nRuns)
Sets the number of runs

Parameters:
nRuns - The number of runs to set

listOptions

public java.util.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(java.lang.String[] options)
                throws java.lang.Exception
Parses a given list of options. Valid options are:

For other options see search algorithm.

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

getOptions

public java.lang.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

getUseCrossOver

public boolean getUseCrossOver()
Returns:
whether cross-over is used

getUseMutation

public boolean getUseMutation()
Returns:
whether mutation is used

getDescendantPopulationSize

public int getDescendantPopulationSize()
Returns:
descendant population size

getPopulationSize

public int getPopulationSize()
Returns:
population size

setUseCrossOver

public void setUseCrossOver(boolean bUseCrossOver)

setUseMutation

public void setUseMutation(boolean bUseMutation)

getUseTournamentSelection

public boolean getUseTournamentSelection()
Returns:
whether Tournament Selection (true) or Maximum Sub-Population (false) should be used

setUseTournamentSelection

public void setUseTournamentSelection(boolean bUseTournamentSelection)

setDescendantPopulationSize

public void setDescendantPopulationSize(int iDescendantPopulationSize)

setPopulationSize

public void setPopulationSize(int iPopulationSize)

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

globalInfo

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

Overrides:
globalInfo in class GlobalScoreSearchAlgorithm
Returns:
The string.

runsTipText

public java.lang.String runsTipText()
Returns:
a string to describe the Runs option.

seedTipText

public java.lang.String seedTipText()
Returns:
a string to describe the Seed option.

populationSizeTipText

public java.lang.String populationSizeTipText()
Returns:
a string to describe the Population Size option.

descendantPopulationSizeTipText

public java.lang.String descendantPopulationSizeTipText()
Returns:
a string to describe the Descendant Population Size option.

useMutationTipText

public java.lang.String useMutationTipText()
Returns:
a string to describe the Use Mutation option.

useCrossOverTipText

public java.lang.String useCrossOverTipText()
Returns:
a string to describe the Use Cross-Over option.

useTournamentSelectionTipText

public java.lang.String useTournamentSelectionTipText()
Returns:
a string to describe the Use Tournament Selection option.