UNPKG

@syntest/core

Version:

The common core of the SynTest Framework

63 lines 2.45 kB
import { ObjectiveManager, EncodingSampler, ObjectiveFunction, SearchAlgorithm, Encoding, Crossover, EventManager } from "../../.."; import { SearchAlgorithmPlugin, SearchAlgorithmOptions } from "../../../plugin/SearchAlgorithmPlugin"; import { EvolutionaryAlgorithm } from "./EvolutionaryAlgorithm"; /** * Many-objective Sorting Algorithm (MOSA). * * Based on: * Reformulating Branch Coverage as a Many-Objective Optimization Problem * A. Panichella; F. K. Kifetew; P. Tonella * * @author Mitchell Olsthoorn * @author Annibale Panichella */ export declare class MOSAFamily<T extends Encoding> extends EvolutionaryAlgorithm<T> { constructor(eventManager: EventManager<T>, objectiveManager: ObjectiveManager<T>, encodingSampler: EncodingSampler<T>, crossover: Crossover<T>); protected _environmentalSelection(size: number): void; /** * See: Preference sorting as discussed in the TSE paper for DynaMOSA * * @param population * @param objectiveFunctions */ preferenceSortingAlgorithm(population: T[], objectiveFunctions: Set<ObjectiveFunction<T>>): T[][]; /** * It retrieves the front of non-dominated solutions from a list */ getNonDominatedFront(uncoveredObjectives: Set<ObjectiveFunction<T>>, remainingSolutions: T[]): T[]; /** * Preference criterion in MOSA: for each objective, we select the test case closer to cover it. * * @param population * @param objectives list of objective to consider * @protected */ preferenceCriterion(population: T[], objectives: Set<ObjectiveFunction<T>>): T[]; } /** * Factory plugin for MOSA * * @author Dimitri Stallenberg */ export declare class MOSAFactory<T extends Encoding> implements SearchAlgorithmPlugin<T> { name: string; register(): void; createSearchAlgorithm(options: SearchAlgorithmOptions<T>): SearchAlgorithm<T>; } /** * Factory plugin for DynaMOSA * * Dynamic Many-Objective Sorting Algorithm (DynaMOSA). * * Based on: * Automated Test Case Generation as a Many-Objective Optimisation Problem with Dynamic Selection of the Targets * A. Panichella; F. K. Kifetew; P. Tonella * * @author Dimitri Stallenberg */ export declare class DynaMOSAFactory<T extends Encoding> implements SearchAlgorithmPlugin<T> { name: string; register(): void; createSearchAlgorithm(options: SearchAlgorithmOptions<T>): SearchAlgorithm<T>; } //# sourceMappingURL=MOSAFamily.d.ts.map