def __init__(
     self,
     problem: MOProblem,
     pop_size: int,
     pop_params: Dict = None,
     use_surrogates: bool = False,
 ):
     super().__init__(problem, pop_size)
     self.lower_limits = self.problem.get_variable_lower_bounds()
     self.upper_limits = self.problem.get_variable_upper_bounds()
     self.individuals_archive = {}
     self.objectives_archive = {}
     self.uncertainty_archive = {}
     self.gen_count = 1
     #self.individuals_archive[str(self.gen_count)] = self.individuals
     #self.objectives_archive[str(self.gen_count)] = self.objectives
     #self.uncertainty_archive[str(self.gen_count)] = self.uncertainity
     if pop_params is None:
         design = "LHSDesign"
     if pop_params is not None:
         if "design" in pop_params.keys():
             design = pop_params["design"]
         else:
             design = "LHSDesign"
     if design == "InitSamples":
         individuals = pop_params["init_pop"]
     else:
         individuals = create_new_individuals(design, problem, pop_size)
     self.add(individuals, use_surrogates)
     self.xover = SBX_xover()
     self.mutation = BP_mutation(self.lower_limits, self.upper_limits)
예제 #2
0
 def __init__(self, problem: MOProblem, pop_size: int, pop_params: Dict = None):
     super().__init__(problem, pop_size)
     self.lower_limits = self.problem.get_variable_lower_bounds()
     self.upper_limits = self.problem.get_variable_upper_bounds()
     if pop_params is None:
         design = "LHSDesign"
     if pop_params is not None:
         if "design" in pop_params.keys():
             design = pop_params["design"]
         else:
             design = "LHSDesign"
     individuals = create_new_individuals(design, problem, pop_size)
     self.add(individuals)
     self.xover = SBX_xover()
     self.mutation = BP_mutation(self.lower_limits, self.upper_limits)