tycho-solver
Version:
Evolutionary computation and optimization library
27 lines • 1.14 kB
JavaScript
export class LSInitializationOperator {
async initialize(config) {
const { initialSolution, randomInitializer, objectiveFunction, neighborhoodFunction, options, evaluationOperator, neighborhoodOperator, terminationOperator } = config;
const solution = randomInitializer ? randomInitializer() : initialSolution;
const fitness = await objectiveFunction(solution);
const args = {
currentSolution: solution,
currentFitness: fitness,
objectiveFunction,
options,
iterations: 0,
evaluationOperator,
neighborhoodOperator,
terminationOperator
};
if (neighborhoodFunction !== undefined) {
args.neighborhoodFunction = neighborhoodFunction;
}
const { solution: finalSolution, fitness: finalFitness, iterations } = await import('./SearchLoopOperator').then(m => m.SearchLoopOperator(args));
return {
solution: finalSolution,
fitness: finalFitness,
iterations
};
}
}
//# sourceMappingURL=InitializationOperator.js.map