def __init__(self, cfg, mlog=list()): self.config = ConfigFile(cfg) self.startconfig = ConfigFile(deepcopy(self.config)) self.metrics = [ResultsDB(x) for x in config.metrics] self.cid = Candidate.nextCandidateId self.outputdir = storagedirs.candidate(self.cid) self.mutationlog = list(mlog) Candidate.nextCandidateId += 1
def __init__(self, cfg, infoxml, mutators=[]): self.config = ConfigFile(cfg) self.metrics = [ResultsDB(x) for x in config.metrics] self.mutators = list(mutators) self.cid = Candidate.nextCandidateId self.infoxml = infoxml self.lastMutator = None self.outputdir = storagedirs.candidate(self.cid) self.C = config.bandit_c # exploration/exploitation trade-off in the DMAB algorithm self.mutatorScores = dict() for m in self.mutators: self.mutatorScores[m] = 0 Candidate.nextCandidateId += 1