Package weka.attributeSelection

# Class ASSearch

java.lang.Object
weka.attributeSelection.ASSearch

All Implemented Interfaces:
  `Serializable`, `RevisionHandler`

Direct Known Subclasses:
  `BestFirst`, `ExhaustiveSearch`, `GeneticSearch`, `GreedyStepwise`, `LinearForwardSelection`, `RaceSearch`, `RandomSearch`, `Ranker`, `RankSearch`, `ScatterSearchV1`, `SubsetSizeForwardSelection`

public abstract class ASSearch extends Object implements Serializable, RevisionHandler
Abstract attribute selection search class.

Version:
  $Revision: 1.12 $
Author:
  Mark Hall (mhall@cs.waikato.ac.nz)
See Also:
  - Serialized Form

## Constructor Summary

Constructors
Constructor
Description
`ASSearch()`

## Method Summary

Modifier and Type
Method
Description
`static ASSearch`
`forName(String searchName, String[] options)`
Creates a new instance of a search class given it's class name and (optional) arguments to pass to it's setOptions method.
`String`
`getRevision()`
Returns the revision string.
`static ASSearch[]`
`makeCopies(ASSearch model, int num)`
Creates copies of the current search scheme.
`abstract int[]`
`search(ASEvaluation ASEvaluator, Instances data)`
Searches the attribute subset/ranking space.

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

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

## Constructor Details

### ASSearch

public ASSearch()

## Method Details

### getRevision

public String getRevision()
Returns the revision string.

Specified by:
  `getRevision` in interface `RevisionHandler`
Returns:
  the revision

### search

public abstract int[] search(ASEvaluation ASEvaluator, Instances data) throws Exception
Searches the attribute subset/ranking space.

Parameters:
  `ASEvaluator` - the attribute evaluator to guide the search
  `data` - the training instances.
Returns:
  an array (not necessarily ordered) of selected attribute indexes
Throws:
  `Exception` - if the search can't be completed

### forName

public static ASSearch forName(String searchName, String[] options) throws Exception
Creates a new instance of a search class given it's class name and (optional) arguments to pass to it's setOptions method. If the search method implements OptionHandler and the options parameter is non-null, the search method will have it's options set.

Parameters:
  `searchName` - the fully qualified class name of the search class
  `options` - an array of options suitable for passing to setOptions. May be null.
Returns:
  the newly created search object, ready for use.
Throws:
  `Exception` - if the search class name is invalid, or the options supplied are not acceptable to the search class.

### makeCopies

public static ASSearch[] makeCopies(ASSearch model, int num) throws Exception
Creates copies of the current search scheme. Note that this method now uses Serialization to perform a deep copy, so the search object must be fully Serializable. Any currently built model will now be copied as well.

Parameters:
  `model` - an example search scheme to copy
  `num` - the number of search scheme copies to create.
Returns:
  an array of search schemes.
Throws:
  `Exception` - if an error occurs