Ottimizzazione delle colonie di formiche: intuizione, codice e visualizzazione |  di James Koh, Ph.D. |  Gennaio 2024

 | Intelligenza-Artificiale

Dove si distingue dagli altri algoritmi swarm

Questo articolo è la continuazione della mia serie ispirata alla natura.

In precedenza, ho parlato Algoritmo evolutivo (EA), Ottimizzazione dello sciame di particelle (PSO), nonché Colonia di api artificiale (ABC). La natura è ovunque e ci sono sicuramente più aree in cui gli esseri umani possono trarre vantaggio dall’imparare dalla natura.

Oggi ci concentriamo sulle formiche.

Da bambini abbiamo imparato che le formiche sono laboriose e cooperative. Ciò che i nostri genitori non ci avevano insegnato era che le formiche formano collettivamente uno sciame altamente sofisticato che comunica tra loro in modo efficace.

La conoscenza delle formiche o dei feromoni (o qualsiasi diffusione di qualsiasi sostanza chimica) non è affatto richiesta qui. Questi sono solo nomi usati ai fini del confezionamento. Ho dimostrato in precedenza che non è necessaria la minima conoscenza della danza dell’ape per apprezzare o utilizzare l’ABC, né è necessario conoscere i geni, le mutazioni o la riproduzione per applicare l’EA.

Tutto ciò di cui hai bisogno è una comprensione dell’inglese per avere l’intuizione, insieme a competenze di base di matematica e programmazione Python. Anche se mostrerò un po’ di matematica per completezza, che include i simboli greci, in realtà è solo a scopo di completezza. Sarebbe un vero peccato se queste parole o simboli dal suono tecnico ti impedissero di apprendere questi fantastici algoritmi, quindi fatti un favore e continua a leggere.

Prima di addentrarsi in qualsiasi matematica o codice, o anche nel modo in cui funziona l’algoritmo ad alto livello, è opportuno vedere la rilevanza. Dopo tutto, se non aiuta a risolvere un problema, perché preoccuparsi?

L’esempio classico utilizzato da docenti o sostenitori dell’ottimizzazione delle colonie di formiche (ACO) è l’esperimento del doppio ponte (1), che mostra che questo algoritmo può essere utilizzato per trovare il percorso più breve tra due punti.

(Immagine di una formica da DALL·E 3, realizzata dall’autore utilizzando PowerPoint.) Il percorso superiore è più breve, e quindi ha una maggiore densità di formiche, rispetto al percorso inferiore.

Inoltre, è resistente ai cambiamenti ambientali. Se i percorsi esistenti vengono ostruiti e/o se ne emergono di nuovi, la soluzione può essere aggiornata con facilità, invece di ricalcolare tutto da zero.

Fonte: towardsdatascience.com

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *