# Genetic Programming
**Domain:** Evolutionary Computation / Program Synthesis
**Doc Type:** Canonical Concept Node
**Maturity:** Foundational
## Definition
**Genetic programming** evolves executable structures or program-like representations through selection and variation rather than limiting search to a fixed set of numerical parameters.
## Stanford and ST5 Context
John Koza developed and popularized genetic programming as a general method for breeding programs from performance criteria. In the ST5 antenna project, a tree-structured representation allowed branching antenna geometries.
[[articles/The Evolutionary Roots of Silicon Valley|The Evolutionary Roots of Silicon Valley]] uses this lineage to show evolution becoming a manufacturing process. Human-competitive output does not mean human absence: designers choose primitives, representation, simulator, objectives and verification.
## Continuity Context
Genetic programming produces descent trees whose descendants may contain reorganized fragments of ancestors. That makes it useful for software provenance, but shared code lineage does not imply shared subjectivity.
## Sources / Provenance
- John R. Koza, _Genetic Programming_, 1992.
- Stanford talk, “Routine Human-Competitive Machine Intelligence”: https://web.stanford.edu/class/ee380/Abstracts/041124.html
- NASA ST5 technical report: https://ntrs.nasa.gov/search.jsp?R=20040152147
## See Also
[[wiki/John Koza|John Koza]], [[wiki/Genetic Algorithm|Genetic Algorithm]], [[wiki/Descent vs Derivation|Descent vs Derivation]], [[wiki/Evolved Antenna|Evolved Antenna]]