enome
Version:
A genome generation and evolution library.
17 lines • 1.69 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var chance_1 = require("chance");
var _ = require("lodash");
var index_1 = require("../../index");
var chance = new chance_1.Chance();
function reproduce(gen1, gen2, weight1, weight2, mutateChance) {
if (weight1 === void 0) { weight1 = 1; }
if (weight2 === void 0) { weight2 = 1; }
if (mutateChance === void 0) { mutateChance = 0.05; }
return index_1.mutate(new index_1.Genome(gen1.options, _.zip(gen1.sequence, gen2.sequence).map(function (vals) {
var v = chance.weighted(vals, [weight1, weight2]);
return v;
})), mutateChance, index_1.MutateOp.avg);
}
exports.reproduce = reproduce;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwcm9kdWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL29wZXJhdG9ycy9yZXByb2R1Y3Rpb24vcmVwcm9kdWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsaUNBQWdDO0FBQ2hDLDBCQUE0QjtBQUM1QixxQ0FBdUU7QUFFdkUsSUFBTSxNQUFNLEdBQUcsSUFBSSxlQUFNLEVBQUUsQ0FBQztBQUU1QixtQkFDRSxJQUFlLEVBQ2YsSUFBZSxFQUNmLE9BQW1CLEVBQ25CLE9BQW1CLEVBQ25CLFlBQTJCO0lBRjNCLHdCQUFBLEVBQUEsV0FBbUI7SUFDbkIsd0JBQUEsRUFBQSxXQUFtQjtJQUNuQiw2QkFBQSxFQUFBLG1CQUEyQjtJQUUzQixNQUFNLENBQUMsY0FBTSxDQUNYLElBQUksY0FBTSxDQUNSLElBQUksQ0FBQyxPQUFPLEVBQ1osQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsVUFBQyxJQUFjO1FBQ3JELElBQU0sQ0FBQyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDcEQsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUMsQ0FBQyxDQUNILEVBQ0QsWUFBWSxFQUNaLGdCQUFRLENBQUMsR0FBRyxDQUNiLENBQUM7QUFDSixDQUFDO0FBbEJELDhCQWtCQyJ9