Genetisk algoritm, inom artificiell intelligens, en typ av evolutionär datoralgoritm där symboler (ofta kallade ”gener” eller ”kromosomer”) som representerar möjliga lösningar ”avlas”. Denna ”uppfödning” av symboler innefattar vanligtvis en mekanism som liknar crossing-over-processen vid genetisk rekombination och en justerbar mutationshastighet. En fitnessfunktion används i varje generation av algoritmer för att gradvis förbättra lösningarna i likhet med det naturliga urvalet. Processen för att utveckla de genetiska algoritmerna och automatisera urvalet kallas genetisk programmering. Förutom allmän programvara används genetiska algoritmer ibland i forskning med artificiellt liv, cellulära automater och neurala nätverk.
Och även om John Holland inte var den förste som experimenterade med genetiska algoritmer, gjorde han mycket för att utveckla och popularisera området med sitt arbete i början av 1970-talet vid University of Michigan. Som beskrivs i hans bok Adaptation in Natural and Artificial Systems (1975; reviderad och utökad 1992) utarbetade han en metod, eller schemateorem, för att utvärdera varje generation av genetiska algoritmer. John Koza, en av Hollands doktorander och innehavare av mer än ett dussin patent med anknytning till genetisk programmering, var en av de första som utvecklade kommersiella tillämpningar av området, som grundare av ett företag känt som Scientific Games. Koza delade med sig av sina programmeringserfarenheter i en serie böcker som började med Genetic Programming: On the Programming of Computers by Means of Natural Selection (1992).
En svårighet som man ofta stöter på vid genetisk programmering är att algoritmerna fastnar i området för en någorlunda bra lösning (ett ”lokalt optimalt område”) i stället för att hitta den bästa lösningen (ett ”globalt optimum”). För att övervinna sådana evolutionära återvändsgränder krävs ibland mänskligt ingripande. Dessutom är genetisk programmering beräkningsintensiv. Under 1990-talet hade programmeringstekniken för den inte utvecklats tillräckligt för att motivera den dyra användningen av superdatorer, vilket begränsade tillämpningarna till ganska förenklade problem. I takt med att billigare persondatorer blev kraftfullare började dock genetisk programmering få anmärkningsvärda kommersiella framgångar inom kretsdesign, sortering och sökning av data samt kvantberäkningar. National Aeronautics and Space Administration (NASA) använde dessutom genetisk programmering vid utformningen av antenner för Space Technology 5 Project, som omfattade tre ”mikrosatelliter” som sköts upp 2006 för att övervaka effekterna av solaktivitet på jordens magnetosfär.