@zfunction/genetics-js
Version:
Genetic and evolutionary algorithms framework for the web
19 lines (18 loc) • 1.23 kB
TypeScript
import { FloatingIndividual } from '../../../individual/numeric/floating';
import { BaseCrossover, CrossoverParams } from '../../base';
export interface BaseFloatingCrossoverParams extends CrossoverParams<FloatingIndividual, number> {
alpha: number;
}
export declare abstract class BaseFloatingCrossover extends BaseCrossover<FloatingIndividual, number, BaseFloatingCrossoverParams> {
protected recombinationPoint: number;
cross(firstParent: FloatingIndividual, secondParent: FloatingIndividual, alpha?: number, engine?: import("random-js").Engine): FloatingIndividual[];
crossWith(firstParent: FloatingIndividual, secondParent: FloatingIndividual, params: BaseFloatingCrossoverParams): FloatingIndividual[];
protected getGenotypeValues(firstParent: FloatingIndividual, secondParent: FloatingIndividual, params: BaseFloatingCrossoverParams, index: number): {
first: number;
second: number;
};
protected abstract getRecombinationCondition(index: number): boolean;
protected getRecombinationValue(firstParentValue: number, secondParentValue: number, params: BaseFloatingCrossoverParams): number;
private checkParams;
private generateRecombinationPoint;
}