galapagos
DocsHubLeaderboardPlaygroundNews
galapagos

six blocks · any task ·
better solutions emerge.

Platform

  • Hub
  • Leaderboard
  • Playground

Resources

  • Docs
  • API reference
  • Card spec

Community

  • GitHub
  • Contribute

Updates

  • News
  • Releases

© 2026 Galapagos. Licensed under Apache-2.0.

Build your own scaffold.

Hub/Scaffolds/SkyDiscover/AdaEvolve

SkyDiscover/adaevolve

AdaEvolve

Hierarchical adaptive search: G-signal exploration intensity, UCB island allocation, and LLM meta-guidance on stagnation.

Test-time searchApache-2.0
Scaffold cardFiles and versions
adaevolve/config.yaml
47 lines · 3.6 KByamlDownload
# AdaEvolve — faithful port of SkyDiscover's AdaEvolve defaults (the reference implementation;
# it is the ground truth wherever it diverges from the paper).
# Sections mirror the six core components. Mirrors skydiscover AdaEvolveDatabaseConfig.
seed: 0
general:
  max_iterations: 100
  inner_retry_times: 3                   # 1 + max_error_retries(2): AdaEvolveController._run_normal_step
                                         # makes up to 3 generate+evaluate attempts per iteration, each
                                         # RESAMPLING the parent/mode and folding the prior error as
                                         # RETRY CONTEXT (handled by the scaffold's step override, not the
                                         # shared base _attempt which holds the parent fixed)
population:                              # AdaEvolveArchipelago
  num_islands: 2                        # initial islands (also read by selection_policy)
  population_size: 20                   # programs per island archive (ArchiveConfig.max_size)
  k_neighbors: 5                        # k for k-NN code-distance novelty
  archive_elite_ratio: 0.2             # fraction protected from eviction
  fitness_weight: 1.0                   # elite-score fitness-percentile weight
  novelty_weight: 0.0                   # elite-score novelty-percentile weight
  pareto_weight: 0.4                    # deprecated; folded into fitness (scalar)
  migration_count: 5                    # top programs sent to (k+1) mod K
selection_policy:                       # AdaEvolvePolicy (also reads population.num_islands)
  decay: 0.9                            # EMA (ρ) for G, UCB rewards R, decayed visits V
  intensity_min: 0.15                   # exploration-probability floor (I_min)
  intensity_max: 0.5                    # exploration-probability ceiling (I_max)
  fixed_intensity: 0.4                  # used when use_adaptive_search is false
  use_adaptive_search: true             # ablation: G-based intensity vs fixed_intensity
  use_ucb_selection: true               # ablation: UCB island selection vs round-robin
  use_migration: true                   # ablation: ring migration on/off
  use_dynamic_islands: true             # spawn islands on global stagnation
  migration_interval: 15                # migrate every N iterations
  max_islands: 5                        # island cap for dynamic spawning
  spawn_productivity_threshold: 0.015   # spawn when improvements/evaluations < this
  spawn_cooldown_iterations: 30         # min iterations between spawns
  local_context_program_ratio: 0.6      # local share of inspirations
  num_inspirations: 4                   # inspirations per prompt (num_context_programs)
memory:                                 # AdaEvolveParadigmMemory (Level-3 meta-guidance)
  use_paradigm_breakthrough: true       # paradigm-breakthrough on/off
  paradigm_window_size: 10              # binary global-improvement window
  paradigm_improvement_threshold: 0.12  # rate < this (full window, no active paradigm) → generate
  paradigm_max_uses: 2                  # uses per paradigm before rotation
  paradigm_num_to_generate: 3           # ideas per generator call
  paradigm_max_tried: 10                # bounded history of tried paradigms
# NOTE (deviations from the upstream config surface):
# - upstream `use_unified_archive` (QD-archive vs legacy capped-list ablation) is NOT ported —
#   the quality-diversity archive is always on (sanctioned decision; no legacy mode).
# - upstream `diff_based_generation` / `allow_full_rewrites` are not exposed: AdaEvolveProposer is
#   hard-wired to SEARCH/REPLACE diffs with a full-rewrite fallback (the upstream defaults).