UNPKG

@syntest/search

Version:

The common core of the SynTest Framework

65 lines 2.07 kB
import { Decoder } from "./Decoder"; import { EncodingSampler } from "./EncodingSampler"; import { ExecutionResult } from "./ExecutionResult"; import { ObjectiveFunction } from "./objective/ObjectiveFunction"; /** * Encoding of the search problem. */ export declare abstract class Encoding { protected _crowdingDistance: number; protected _rank: number; protected _id: string; protected _metaComments: string[]; /** * Mapping from objective to their distance values for this test case. * @protected */ protected _objectives: Map<ObjectiveFunction<Encoding>, number>; /** * The last execution result of this test case. * @protected */ protected _executionResult: ExecutionResult; /** * Constructor. */ constructor(); abstract mutate(sampler: EncodingSampler<Encoding>): Encoding; abstract hashCode(decoder: Decoder<Encoding, string>): number; getCrowdingDistance(): number; setCrowdingDistance(value: number): void; getRank(): number; setRank(value: number): void; get id(): string; get metaComments(): string[]; addMetaComment(comment: string): void; abstract copy(): Encoding; /** * Return the execution result. */ getExecutionResult(): ExecutionResult; /** * Store the execution result. * * @param executionResult The execution result to store */ setExecutionResult(executionResult: ExecutionResult): void; /** * Return the distance for the given objective. * * @param objectiveFunction The objective. */ getDistance(objectiveFunction: ObjectiveFunction<Encoding>): number; /** * Store the distance to an objective for this encoding. * * @param objectiveFunction The objective * @param distance The distance */ setDistance(objectiveFunction: ObjectiveFunction<Encoding>, distance: number): void; /** * Return the length of the encoding/chromosome */ abstract getLength(): number; } //# sourceMappingURL=Encoding.d.ts.map