# Genetic programming
## MicroSim spec
- **Recommended sim type:** evolutionary / agent-based
- **Microsimmability score:** 78/100
- **Layout:** drawing region (canvas) on top; control region (sliders/buttons) below.
### Parameters (tunable controls)
- `Population size`
- `Mutation rate`
- `Tree depth`
### What animates
Program-trees mutate and recombine, improving in fitness over generations.
### Learning objective
Show how evolving program-trees can solve a task.
## Links (Wikipedia order)
<!-- injected from _registry/childlinks/Genetic_programming.json (2026-07-30T02:09:12Z) -->
`ACM_SIGEVO` · `Academic_journal` · `Alan_Turing` · [[Algorithm]] · `Artificial_development` · [[Artificial_intelligence]] · [[Artificial_life]] · `Assembly_language` · `Association_for_Computing_Machinery` · `Automatic_programming` · `Bees_algorithm` · `Bio-inspired_computing` · `CMA-ES` · `Cartesian_genetic_programming` · `Cellular_evolutionary_algorithm` · `Chromosome_(evolutionary_algorithm)` · `Clonal_selection_algorithm` · `Computing_Machinery_and_Intelligence` · `Crossover_(evolutionary_algorithm)` · `Cuckoo_search` · `Cultural_algorithm` · `DNA_computing` · `Differential_evolution` · `Digital_organism` · `Douglas_Lenat` · `Effective_fitness` · `Eurisko` · `EvoStar` · `Evolution_strategy` · `Evolutionary_Computation_(journal)` · `Evolutionary_algorithm` · [[Evolutionary_computation]] · `Evolutionary_data_mining` · `Evolutionary_image_processing` · `Evolutionary_multimodal_optimization` · `Evolutionary_programming` · [[Evolutionary_robotics]] · `Feature_selection` · `Firefly_algorithm` · `Fitness_approximation` · `Fitness_function` · `Fitness_landscape` · `Fitness_proportionate_selection` · `Fly_algorithm` · `Functional_programming` · `Gaussian_adaptation` · `Gene_expression_programming` · `Generic_programming` · [[Genetic_algorithm]] · `Genetic_and_Evolutionary_Computation_Conference` · [[Genetic_engineering]] · `Genetic_fuzzy_systems` · `Genetic_memory_(computer_science)` · `Genetic_operator` · `Genetic_representation` · `Grammar_induction` · `Grammatical_evolution` · `Human-based_evolutionary_computation` · `IEEE_Congress_on_Evolutionary_Computation` · `IEEE_Transactions_on_Evolutionary_Computation` · `Inductive_programming` · `Institute_of_Electrical_and_Electronics_Engineers` · `Interactive_evolutionary_computation` · `Intron` · `John_Koza` · `Jürgen_Schmidhuber` · `Learning_classifier_system` · `Linear_genetic_programming` · `Lisp_(programming_language)` · [[Machine_learning]] · `Mating_pool` · `Memetic_algorithm` · `Meta-learning_(computer_science)` · `Metaheuristic` · `Multi_expression_programming` · `Mutation_(evolutionary_algorithm)` · `Natural_evolution_strategy` · `Neuroevolution` · `No_free_lunch_in_search_and_optimization` · `Parallel_Problem_Solving_from_Nature` · [[Particle_swarm_optimization]] · `Peter_Nordin` · `Population_model_(evolutionary_algorithm)` · `Premature_convergence` · `Program_synthesis` · `Programming_language` · `Promoter_based_genetic_algorithm` · `Schema_(genetic_algorithms)` · `Selection_(evolutionary_algorithm)` · `Swarm_intelligence` · `Symbolic_regression` · `Three-address_code` · `Tournament_selection` · `Tree_structure` · `Variational_properties` · [[Wayback_Machine]]
> p5.js MicroSim stub · part of Systems Thinking · [Wikipedia source](https://en.wikipedia.org/wiki/Genetic_programming)
> Relation: subfield of systems thinking.
## Concept summary
Genetic programming (GP) is an evolutionary [[Algorithm|algorithm]], an [[Artificial_intelligence|artificial intelligence]] technique mimicking natural [[Evolution|evolution]], which operates on a population of programs. It applies the genetic operators selection according to a predefined fitness measure, mutation and crossover.
## Build checklist
- [ ] Claim it: set `status: in-progress` + `lease` + `leased_at`
- [ ] Write the child page explaining the concept (tie it back to systems thinking)
- [ ] Finalize parameter ranges and defaults
- [ ] Implement the p5.js sketch (drawing + control regions)
- [ ] Add caption + the learning objective on the page
- [ ] Set `status: done`
## p5.js sketch
```javascript
// MicroSim: Genetic programming
let controls = {};
function setup() {
// createCanvas(...); create sliders for the parameters above.
}
function draw() {
// background(...); read controls; render evolutionary / agent-based; respond live.
}
```
---
Back to Systems Thinking · Wikipedia: [Genetic programming](https://en.wikipedia.org/wiki/Genetic_programming)
---
<!-- SEMIOTIC-PROFILE:START -->
## Semiotic profile
> *The semiotic universals this article invokes, machine-derived from the crossref — **unverified** (born so). Populated 2026-07-06 for the Systems room.*
**Universals (6):** 🟡 system (10) · 🟢 tree hierarchy (6) · 🟡 science (5) · 🟡 evolution (4) · 🟢 optimization (4) · 🟢 measurement (1)
**Enter by sign:** Systems Semiotic Gateway · Alphabetum · Icon Registry · ← Systems Portal
<!-- SEMIOTIC-PROFILE:END -->
## Wikipedia : Wikitube
**Strict pair:** [Wikipedia](https://en.wikipedia.org/wiki/Genetic_programming) : [Wikitube](https://en.wikitube.io/wiki/Genetic_programming)
## Previous hub tags
Tree parents: [[Complex_system]] · [[Cybernetics]] · [[Emergence]] · [[Feedback]] · [[Self-organization]] · [[Systems_science]] · [[Systems_theory]].
Legacy hubs: none.
---
*Sources: 2 legacy notes. Minted wave 1, 2026-07-30 (v1.6 order).*