culebra.solution.feature_selection.BitVector class¶
- class BitVector(species: Species, fitness_cls: type[Fitness], features: Sequence[int] | None = None)¶
Bases:
BinarySolution,IndividualConstruct a default solution.
Class attributes¶
Class methods¶
- classmethod BitVector.load(filename: str) Base¶
Load a serialized object from a file.
- Parameters:
filename (str) – The file name.
- Returns:
The loaded object
- Raises:
TypeError – If filename is not a valid file name
ValueError – If the filename extension is not
SERIALIZED_FILE_EXTENSION
Properties¶
- property BitVector.features: ndarray[int]¶
Features selected by the solution
- Returns:
Return an ordered sequence with the indices of the selected features
- Return type:
- Setter:
Set a new set of selected features
- Parameters:
- Raises:
ValueError – If set to new feature indices values which do not meet the species constraints.
Methods¶
- BitVector.crossover(other: BitVector) tuple[BitVector, BitVector]¶
Default crossover operator.
Implemented as the single-point crossover.
- BitVector.crossover1p(other: BitVector) tuple[BitVector, BitVector]¶
Cross this individual with another one.
This method implements the single-point crossover.
- BitVector.crossover2p(other: BitVector) tuple[BitVector, BitVector]¶
Cross this individual with another one.
This method implements the two-points crossover.
- BitVector.dump(filename: str) None¶
Serialize this object and save it to a file.
- Parameters:
filename (str) – The file name.
- Raises:
TypeError – If filename is not a valid file name
ValueError – If the filename extension is not
SERIALIZED_FILE_EXTENSION
Private methods¶
Dunder methods¶
Intended to compare (lexicographically) two bit vectors according to their fitness.
- BitVector.__hash__() int¶
Return the hash number for this solution.
The hash number is used for equality comparisons. Currently is implemented as the hash of the solution’s string representation.
- Return type:

