Välj en webbplats
On januari 8, 2022 by adminVad är den genetiska algoritmen?
Den genetiska algoritmen är en metod för att lösa både begränsade och obegränsade optimeringsproblem som bygger på det naturliga urvalet, den process som styr den biologiska utvecklingen. Den genetiska algoritmen ändrar upprepade gånger en population av individuella lösningar. I varje steg väljer den genetiska algoritmen slumpmässigt individer från den aktuella populationen som föräldrar och använder dem för att producera barnen för nästa generation. Under flera på varandra följande generationer ”utvecklas” populationen mot en optimal lösning. Du kan använda den genetiska algoritmen för att lösa en mängd olika optimeringsproblem som inte lämpar sig väl för vanliga optimeringsalgoritmer, t.ex. problem där målfunktionen är diskontinuerlig, icke-differentierbar, stokastisk eller mycket icke-linjär. Den genetiska algoritmen kan hantera problem med blandad heltalsprogrammering, där vissa komponenter är begränsade till att vara heltalsvärderade.
Den genetiska algoritmen använder tre huvudtyper av regler i varje steg för att skapa nästa generation från den aktuella populationen:
-
Selektionsreglerna väljer ut de individer, som kallas föräldrar, som bidrar till populationen i nästa generation.
-
Korsningsregler kombinerar två föräldrar för att bilda barn för nästa generation.
-
Mutationsregler tillämpar slumpmässiga förändringar på enskilda föräldrar för att bilda barn.
Den genetiska algoritmen skiljer sig från en klassisk, derivatbaserad, optimeringsalgoritm på två huvudsakliga sätt, som sammanfattas i följande tabell.
Klassisk algoritm | Genetisk algoritm |
---|---|
Genererar en enda punkt vid varje iteration. Sekvensen av punkter närmar sig en optimal lösning. |
Genererar en population av punkter vid varje iteration. Den bästa punkten i populationen närmar sig en optimal lösning. |
Väljer nästa punkt i sekvensen genom en deterministisk beräkning. |
Väljer nästa population genom en beräkning som använder sig av slumpmässiga talgeneratorer. |
Relaterade ämnen
- Terminologi för genetiska algoritmer
- Hur den genetiska algoritmen fungerar
- Nononlinjära algoritmer för problemlösning
Lämna ett svar