@@ -80,6 +80,13 @@ class DatabaseConfig:
8080 feature_dimensions : List [str ] = field (default_factory = lambda : ["score" , "complexity" ])
8181 feature_bins : int = 10
8282
83+ # Migration parameters for island-based evolution
84+ migration_interval : int = 50 # Migrate every N generations
85+ migration_rate : float = 0.1 # Fraction of population to migrate
86+
87+ # Random seed for reproducible sampling
88+ random_seed : Optional [int ] = None
89+
8390
8491@dataclass
8592class EvaluatorConfig :
@@ -188,8 +195,9 @@ def to_dict(self) -> Dict[str, Any]:
188195 "num_diverse_programs" : self .prompt .num_diverse_programs ,
189196 "use_template_stochasticity" : self .prompt .use_template_stochasticity ,
190197 "template_variations" : self .prompt .template_variations ,
191- "use_meta_prompting" : self .prompt .use_meta_prompting ,
192- "meta_prompt_weight" : self .prompt .meta_prompt_weight ,
198+ # Note: meta-prompting features not implemented
199+ # "use_meta_prompting": self.prompt.use_meta_prompting,
200+ # "meta_prompt_weight": self.prompt.meta_prompt_weight,
193201 },
194202 "database" : {
195203 "db_path" : self .database .db_path ,
@@ -200,19 +208,25 @@ def to_dict(self) -> Dict[str, Any]:
200208 "elite_selection_ratio" : self .database .elite_selection_ratio ,
201209 "exploration_ratio" : self .database .exploration_ratio ,
202210 "exploitation_ratio" : self .database .exploitation_ratio ,
203- "diversity_metric" : self .database .diversity_metric ,
211+ # Note: diversity_metric fixed to "edit_distance"
212+ # "diversity_metric": self.database.diversity_metric,
204213 "feature_dimensions" : self .database .feature_dimensions ,
205214 "feature_bins" : self .database .feature_bins ,
215+ "migration_interval" : self .database .migration_interval ,
216+ "migration_rate" : self .database .migration_rate ,
217+ "random_seed" : self .database .random_seed ,
206218 },
207219 "evaluator" : {
208220 "timeout" : self .evaluator .timeout ,
209221 "max_retries" : self .evaluator .max_retries ,
210- "memory_limit_mb" : self .evaluator .memory_limit_mb ,
211- "cpu_limit" : self .evaluator .cpu_limit ,
222+ # Note: resource limits not implemented
223+ # "memory_limit_mb": self.evaluator.memory_limit_mb,
224+ # "cpu_limit": self.evaluator.cpu_limit,
212225 "cascade_evaluation" : self .evaluator .cascade_evaluation ,
213226 "cascade_thresholds" : self .evaluator .cascade_thresholds ,
214227 "parallel_evaluations" : self .evaluator .parallel_evaluations ,
215- "distributed" : self .evaluator .distributed ,
228+ # Note: distributed evaluation not implemented
229+ # "distributed": self.evaluator.distributed,
216230 "use_llm_feedback" : self .evaluator .use_llm_feedback ,
217231 "llm_feedback_weight" : self .evaluator .llm_feedback_weight ,
218232 },
0 commit comments