GeneticSearch

Overview | Package | Class | Tree | Deprecated | Index | Help | Weka's home

PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## weka.classifiers.bayes.net.search.local
Class GeneticSearch

    java.lang.Object
      weka.classifiers.bayes.net.search.SearchAlgorithm
          weka.classifiers.bayes.net.search.local.LocalScoreSearchAlgorithm
              weka.classifiers.bayes.net.search.local.GeneticSearch

All Implemented Interfaces:
  java.io.Serializable, OptionHandler, RevisionHandler

    public class GeneticSearch

extends LocalScoreSearchAlgorithm

This Bayes Network learning algorithm uses genetic search for finding a well scoring Bayes network structure. Genetic search works by having a population of Bayes network structures and allow them to mutate and apply cross over to get offspring. The best network structure found during the process is returned.

Valid options are:

     -L <integer>
      Population size

     -A <integer>
      Descendant population size

     -U <integer>
      Number of runs

     -M
      Use mutation.
      (default true)

     -C
      Use cross-over.
      (default true)

     -O
      Use tournament selection (true) or maximum subpopulatin (false).
      (default false)

     -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: 1.5 $
Author:
  Remco Bouckaert (rrb@xm.co.nz)
See Also:
  Serialized Form

Field Summary

Fields inherited from class weka.classifiers.bayes.net.search.local.LocalScoreSearchAlgorithm
`TAGS_SCORE_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()`
`java.lang.String` | `getRevision()` Returns the revision string.
`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.local.LocalScoreSearchAlgorithm
`buildStructure, calcNodeScore, calcScoreWithExtraParent, calcScoreWithMissingParent, getMarkovBlanketClassifier, getScoreType, logScore, markovBlanketClassifierTipText, scoreTypeTipText, setMarkovBlanketClassifier, setScoreType`

Methods inherited from class weka.classifiers.bayes.net.search.SearchAlgorithm
`initAsNaiveBayesTipText, maxNrOfParentsTipText, 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 `LocalScoreSearchAlgorithm`
  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:

       -L <integer>
        Population size

       -A <integer>
        Descendant population size

       -U <integer>
        Number of runs

       -M
        Use mutation.
        (default true)

       -C
        Use cross-over.
        (default true)

       -O
        Use tournament selection (true) or maximum subpopulatin (false).
        (default false)

       -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:
    `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 `LocalScoreSearchAlgorithm`
  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)

  Parameters:
    `bUseCrossOver` - sets whether cross-over is used

### setUseMutation

    public void setUseMutation(boolean bUseMutation)

  Parameters:
    `bUseMutation` - sets whether mutation is used

### getUseTournamentSelection

    public boolean getUseTournamentSelection()

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

### setUseTournamentSelection

    public void setUseTournamentSelection(boolean bUseTournamentSelection)

  Parameters:
    `bUseTournamentSelection` - sets whether Tournament Selection or Maximum Sub-Population should be used

### setDescendantPopulationSize

    public void setDescendantPopulationSize(int iDescendantPopulationSize)

  Parameters:
    `iDescendantPopulationSize` - sets descendant population size

### setPopulationSize

    public void setPopulationSize(int iPopulationSize)

  Parameters:
    `iPopulationSize` - sets population size

### 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 `LocalScoreSearchAlgorithm`
  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.

### getRevision

    public java.lang.String getRevision()

  Returns the revision string.

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

Overview | Package | Class | Tree | Deprecated | Index | Help | Weka's home

PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD