Seleziona un sito web
Il Gennaio 8, 2022 da adminCos’è l’algoritmo genetico?
L’algoritmo genetico è un metodo per risolvere problemi di ottimizzazione sia vincolati che non vincolati, basato sulla selezione naturale, il processo che guida l’evoluzione biologica. L’algoritmo genetico modifica ripetutamente una popolazione di soluzioni individuali. Ad ogni passo, l’algoritmo genetico seleziona individui a caso dalla popolazione corrente come genitori e li usa per produrre i figli della generazione successiva. Nelle generazioni successive, la popolazione si “evolve” verso una soluzione ottimale. È possibile applicare l’algoritmo genetico per risolvere una varietà di problemi di ottimizzazione che non sono adatti agli algoritmi di ottimizzazione standard, compresi i problemi in cui la funzione obiettivo è discontinua, non differenziabile, stocastica o altamente non lineare. L’algoritmo genetico può affrontare problemi di programmazione integrale mista, dove alcune componenti sono limitate ad essere di valore intero.
L’algoritmo genetico usa tre tipi principali di regole ad ogni passo per creare la prossima generazione dalla popolazione corrente:
-
Le regole di selezione selezionano gli individui, chiamati genitori, che contribuiscono alla popolazione nella generazione successiva.
-
Le regole di crossover combinano due genitori per formare i figli della prossima generazione.
-
Le regole di mutazione applicano cambiamenti casuali ai singoli genitori per formare i figli.
L’algoritmo genetico differisce da un algoritmo di ottimizzazione classico, basato sui derivati, in due modi principali, come riassunto nella tabella seguente.
Algoritmo classico | Algoritmo genetico |
---|---|
Genera un singolo punto ad ogni iterazione. La sequenza di punti si avvicina ad una soluzione ottimale. |
Genera una popolazione di punti ad ogni iterazione. Il punto migliore nella popolazione si avvicina ad una soluzione ottimale. |
Seleziona il prossimo punto nella sequenza tramite un calcolo deterministico. |
Seleziona la prossima popolazione tramite un calcolo che usa generatori di numeri casuali. |
Temi correlati
- Terminologia degli algoritmi genetici
- Come funziona l’algoritmo genetico
- Algoritmi per la soluzione di vincoli lineari
Lascia un commento