Skip to content

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Agentic Parent Selection

Research code for agentic parent selection in Genetic Programming: an LLM/agent framework generates parent-selection algorithms (selector.py) that are plugged into a shared GP engine and evaluated for symbolic regression, then compared against hand-written baselines (tournament and epsilon-lexicase selection).

The repository is organized into seven top-level directories, each with its own README.md giving the full details. This file is a map of the whole project.

Directory overview

Directory Purpose
AGENTS/ The agentic-gp framework — the LLM/RAG agent that generates the parent-selection algorithms. Includes setup (Conda, Ollama/Azure), configuration, RAG documents, and the CLI (main.py) for running the recommender.
GP/ The tree-based Genetic Programming engine (Source/gp.py, DEAP + Ray) that evolves symbolic-regression models with a runtime-pluggable selector, plus the two hardcoded baseline selectors (tournament.py, epsilon_lexicase.py).
Experiments/ Self-contained HPC (SLURM) job bundles and precomputed splits for the two experiments — Experiment 1: Ablation and Experiment 2: Benchmark Evaluation — that drive GP/Source/gp.py. Distributed as archives that must be unzipped.
Data-Tools/ Dataset generation (Pull_Data/) and the analysis pipeline: Python scripts that aggregate raw results into .csv/.txt, and R Markdown reports that render the study's statistics and figures.
RESULTS/ Raw per-replicate experiment outputs (performance MSE, generated algorithms) and the aggregated, analysis-ready data. Available only after unzipping (see below).
UCI-DATA/ The final, polished datasets for the 6 regression problems (one data.csv each). Available only after unzipping (see below).
SUPPLEMENTARY_MATERIAL/ The paper's rendered supplementary PDFs: the exact prompts used in each condition, the Experiment 1 ablation reports (classification, execution, and per-model performance), and the Experiment 2 benchmark performance report. Each is a knit of an analysis report under Data-Tools/.

Compressed directories

Two directories are shipped as zip archives at the repository root and are not present until extracted:

unzip uci_data.zip   # -> UCI-DATA/
unzip results.zip    # -> RESULTS/

The Experiments/ bundles are likewise distributed as archives; see Experiments/README.md for the unzip steps specific to each experiment.

The rendered SUPPLEMENTARY_MATERIAL/ PDFs are also packaged for convenience as supplementary_material.zip at the repository root, which extracts to the same SUPPLEMENTARY_MATERIAL/ folder:

unzip supplementary_material.zip   # -> SUPPLEMENTARY_MATERIAL/

How the pieces fit together

  1. Datasets are built in Data-Tools/Pull_Data/ and distributed as UCI-DATA/ (one data.csv per problem).
  2. The agent in AGENTS/ generates parent-selection algorithms (selector.py) under different LLM/RAG configurations.
  3. The experiments in Experiments/ split the datasets and submit SLURM jobs that run the GP engine in GP/, plugging in either an agent-generated selector or a hardcoded baseline.
  4. Runs write raw outputs to RESULTS/, which Data-Tools/ aggregates and analyzes into the study's tables and figures.

See each directory's README.md for specifics.

About

Repository for our 'Automating Parent Selection Configuration in Genetic Programming with Agentic AI' submission.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages