Algoritmi Genetici e preservazione della diversita

Ieri mi sono imbattuto in un discorso molto interessante con un collega relativamente agli algoritmi genetici. Cosa sono? Per i più pigri (per quelli che hanno troppe tab di Firefox aperte) copio e incollo la loro definizione presa da wikipedia: L’algoritmo genetico è un algoritmo di analisi dei dati e […]

Ieri mi sono imbattuto in un discorso molto interessante con un collega relativamente agli algoritmi genetici.

Cosa sono? Per i più pigri (per quelli che hanno troppe tab di Firefox aperte) copio e incollo la loro definizione presa da wikipedia:

L’algoritmo genetico è un algoritmo di analisi dei dati e appartiene a una particolare classe di algoritmi utilizzati in diversi campi, tra cui l’intelligenza artificiale. È un metodo euristico di ricerca ed ottimizzazione, ispirato al principio della selezione naturale di Charles Darwin che regola l’evoluzione biologica. Questo tipo di algoritmo è detto genetico perché mutua terminologia dalla genetica, branca della biologia. Gli algoritmi genetici sono applicabili alla risoluzione di un’ampia varietà di problemi d’ottimizzazione non indicati per gli algoritmi classici, compresi quelli in cui la funzione obiettivo è discontinua, non derivabile, stocastica, o fortemente non lineare.

Invito comunque a leggere la voce per capire a fondo: http://it.wikipedia.org/wiki/Algoritmo_genetico

Googlando in giro per la rete, ho poi scoperto un interessante articolo preso dalla sempreverde community di pierotofy:

http://www.pierotofy.it/pages/guide_tutorials/Informatica/Algoritmi_Genetici_e_preservazione_della_diversita/

Abstract

Questo articolo descrive tecniche volte al mantenimento della diversità negli algoritmi genetici al fine di migliorarne l’efficienza e di ridurre il rischio di prematura convergenza e stagnazione. Questo articolo è rivolto ai lettori già in possesso di una conoscenza di base della teoria e del funzionamento degli algoritmi genetici.

Per chi desidere approfondire ulteriormente, ecco alcuni esempio di codice utile a comprendere meglio questi algoritmi:

http://www.pierotofy.it/pages/guide_tutorials/Informatica/Algoritmi_Genetici__Parte_I/

http://www.pierotofy.it/pages/guide_tutorials/Informatica/Algoritmi_Genetici__Parte_II/

About Mattia Notari