Genetický algoritmus
genetický algoritmus (GA) je algoritmus našel přibližná řešení k těžký-k-vyřešit problémy, inspirovaný a pojmenoval podle biologických dějů dědičnosti, mutace, přirozeného výběrua genetického přechodu to nastane, když rodiči páří se k potomstvu produkce. Genetické algoritmy jsou zvláštní třída evolučních algoritmů.
Genetické algoritmy jsou typicky splnil jako modelování na počítačích ve kterém populace abstraktních reprezentací kandidáta řešení úlohy optimalizace jsou stochastically vybraná, recombined, mutovaný, a pak jeden odstranil nebo udržel, založený na jejich fitnesses příbuzného.
John Holland byl průkopnický zakladatel hodně z dnešní práce v genetických algoritmech, který se přesunul od čistě teoretického předmětu (ačkoli založeného na modelování počítače), poskytovat metody, které mohou být vyřešily některé těžké problémy dnes. Problémy, které vypadají, že je zvláště vhodný k řešení genetickými algoritmy zahrnují timetabling a sepisující problémy a mnoho sepisujících sad programů je založené na plynu.
Problém být řešen je reprezentován seznamem parametrů, které mohou být zvyklé na projížďku procedura ohodnocení. Možná řešení problému (odkazoval se na jako chromozómy nebo genomy) být také reprezentován v tomto parametrovém seznamovém ročníku. Tyto chromozómy jsou ohodnoceny a hodnota dobroty nebo zdraví je vrácena.
- Zpočátku několik takové seznamy parametru nebo chromozómy jsou náhodně generováni, tvořit počáteční kaluž výhledových řešení. Toto je nazýváno kaluží první generace.
- Všichni chromozómy jsou ohodnoceny funkcí zdravía účinně kaluž je tříděna s těmi mít lepší zdraví nahoře, reprezentovat lepší řešení problému. Si všimnout toho lepší v tomto kontext je absolutní, zatímco výchozí řešení pravděpodobně jsou poněkud chudá.
- První krok v konstrukci další generace má vybrat pár chromozómů pro přechod. Výběr je zaměřený na prvky počáteční generace který mít lepší zdraví, ačkoli to je obvykle ne tak zaujatý že chudější elementy mají žádnou šanci účastnit se. Tam je několik přesně stanovených výběrových metod; kolo rulety výběr a výběr turnaje jsou populární metody.
- Následovat výběr, přechod (nebo rekombinace) operace je vykonávána na vybraných chromozómech. Obecně, dva mateřské chromozómy jsou vybrány množit a jejich přechod vyústí ve dva nové dětské chromozómy, který být přidán ke kaluži druhé generace. Toto je opakováno until tam být přiměřené množství řešení kandidáta v kaluži druhé generace.
- Příští krok má měnit nově rozvinutou kaluž, znovu procesem výběru, tato doba chromozómů jednotlivce, následovaný aplikací mutace genetický operátor.
Nepatrná varianta této metody generace kaluže má dovolit některé ty lepší chromozómy od první generace přenést se do sekundy. Tato forma genetického algoritmu je známá jako elitní výběrová strategie.
Proces pokračuje třetinou buzení, fourth, fifth,... (a tak na) generace, až do jednoho z generací obsahuje řešení, která jsou dobrá dost.
Tam je několik obecných pozorování dělat o generaci řešení.
- Plyn může mít tendenci mířit k místním řešením poněkud než globální řešení problému být řešen
- jak čas pokračuje každá generace bude inklinovat mít rozmanité kopie úspěšných parametrových seznamů, který vyžadovat ohodnocení, a toto může zpomalovat zpracování
- nejdůležitější genetičtí operátoři jsou výběr a přechod. Mutace je jen nutná zajistit, že potenciální řešení nejsou ztracená.
- Plyn být nedobrý v najití optimálních řešení ale moci rychle lokalizovat dobrá řešení, dokonce pro těžké vyhledávací prostory.
Genetické algoritmy jsou známé produkčním dobrým výsledkům pro některé problémy. Jejich hlavní nevýhoda je že oni jsou relativně pomalu, vyrovnal se jiným metodám, takový jako náhodné optimisation. Nedávná rychlostní zlepšení se zaměřila na speciation, wherein se kříží-přes moci jen nastat jestliže jednotlivci jsou blízko-dost příbuzný. Genetické algoritmy byly úspěšně aplikovány na studium neurologický evoluce (vidět NeuroEvolution rozšířenými topologiema).
Genetické programování je příbuzná technika rozvinutá John Koza, ve kterých počítačových programech, poněkud než parametry funkce, být optimalizován. Genetické programování často používá strom-založené interní datové struktury reprezentovat počítačové programy pro adaptaci místo toho seznamu, nebo sada, struktury typické pro genetické algoritmy. Genetické programovací algoritmy typicky vyžadovat hrací čas, který je závažnosti větší než to pro genetické algoritmy, ale oni mohou být vhodní k problémům, které jsou nepoddajné s genetickými algoritmy.
Vidět také: umělý život, osm hádanky královen, evoluční počítání, genetické programování, krajina zdraví, automatické štítkové umístění, Čistý, bio-inspiroval práci na počítači
- Goldberg, David E (1989), Genetické algoritmy v hledání, optimalizaci a učení stroje
- Mitchell, Melanie, (1996), Úvod do genetických algoritmů, MIT tisk, Cambridge, Ma Addison-Wesley
Externí odkazy
- Golem projekt - automatický design a výroba Robotic Lifeforms
- Úvod do genetických algoritmů používat RPL2