Visualizzazione post con etichetta #euristiche. Mostra tutti i post
Visualizzazione post con etichetta #euristiche. Mostra tutti i post

lunedì 3 aprile 2017

🧠 BIO-INSPIRED (AI.1.3.1)

🏠 TILLL / 🎓 Learning / 🧠 AI / complex problems / heuristics / bio-inspired <==

L'Intelligenza Artificiale ispirata ai meccanismi della vita: la Vita Artificiale

#artificialIntelligence #optimization #heuristics #artificialLife #alife #bioInspired #antColony #Swarm #geneticAlgorithms #geneticProgramming #deepLearning #TILLL #TateoBlog 

I problemi di ottimizzazione di sistemi complessi possono essere risolti in modo euristico ispirandosi ai meccanismi naturali che regolano la vita di noi esseri umani. La mia esperienza in particolare è basata sulle tecniche che si ispirano ai meccanismi genetici evolutivi. Tuttavia, in questo articolo intendo accennare anche alle altre tecniche, ugualmente importanti ed affascinanti come, per esempio, quelle che si ispirano al comportamento sociale e collaborativo delle formiche, quelle che si ispirano alla intelligenza collettiva tipica degli sciami, e quelle che si ispirano ai meccanismi di apprendimento del cervello umano.

~ o ~


Ti trovi qui all'interno del progetto TILLL


                   +--> LEARNING 
                   |    +--> ARTIFICIAL INTELLIGENCE 
                   |         +--> COMPLEX PROBLEMS 
                   |              +--> HEURISTICS
                   |                   +--> BIO-INSPIRED
                   |                        +--> SWARM
                   |                        +--> STIGMERGY
                   |                        +--> EVOLUTIONARY
                   |                        +--> DEEP LEARNING
HOME --> PROJECT --O--> BLOG
                   +--> NETWORK
                   +--> ABOUT ME


~ o ~

§. Indice dei contenuti

§1. Ispirazione alla vita ed ai fenomeni naturali 

§2. Intelligenza dello sciame: Swarm Intelligence

§3. Ottimizzazione e stigmergia delle colonie di formiche: Ant Colony Optimization and Stigmergy 

§4. Algoritmi Evoluzionistici

§5. L'apprendimento profondo: Deep Learning

§6. Ispirazioni ai fenomeni natura nell’Informatica e nell’Elettronica

§7. Fonti, riferimenti ed approfondimenti

§8. Più in generale

§9. Rimani aggiornato

§10. Teniamoci in contatto

§11. Qualcosa su di me


~ o ~

§1. Ispirazione alla vita ed ai fenomeni naturali

#Darwin #alife #artificialLife #heuristics #simulation

Tra le tecniche di intelligenza artificiale euristiche che sono utilizzate per la soluzione di problemi complessi, quelle più affascinanti sono quelle che si ispirano ai meccanismi naturali della vita. Se è vero che le specie naturali per sopravvivere evolvono e si adattano all'ambiente in cui vivono, ci domandiamo perché lo stesso meccanismo virtuoso non possa essere utilizzato anche per trovare in modo automatico delle soluzioni efficaci a problemi di progettazione complessi. Per questo motivo nel tempo ci si è orientati a tecniche che non sono basate sulla intelligenza umana ma piuttosto che “emergono naturalmente” tramite un meccanismo di evoluzione darwiniana.

A queste tecniche è stato dato il nome di Artificial Life (abbreviato alife), termine coniato dall'informatico Christopher Langton nel 1986. La vita artificiale è lo studio della vita, ossia di organismi naturali, mediante l'uso di analoghi artificiali, costruiti dall'uomo. Il processo consiste in quindi in una fase di sintesi del sistema artificiale, analogo al sistema vivente che si intende studiare, ed in una fase di simulazione della vita.

L’obiettivo di queste tecniche euristiche basate sulla vita artificiale non è quello di definire un agente per un compito specifico da risolvere, ma piuttosto l’adattamento all’ambiente; “cosa” farà l’agente e “come” lo farà sarà scoperto e deciso dall’evoluzione del sistema. L’orientamento della Artificial Life è quello di replicare i meccanismi della vita. La alife, utilizzando tecniche come gli automi cellulari, gli algoritmi genetici e le reti neurali, si ispira per esempio ai batteri oppure agli animali sociali come le formiche e le termiti.

Riferimenti.
1. Artificial life, Wikipedia (link)

-----------------------------------------
ultimo aggiornamento: 9/6-2022


~ o ~

§2. Intelligenza dello sciame: Swarm Intelligence


#bioInspired #swarmIntelligence #collectiveIntelligence

La swarm intelligence, traducibile come: intelligenza dello sciame, prende in considerazione lo studio dei sistemi auto-organizzati, nei quali un'azione complessa deriva da un'intelligenza collettiva, come accade in natura nel caso di colonie di insetti o stormi di uccelli, oppure branchi di pesci, o mandrie di mammiferi.


La swarm intelligence può essere definita come la proprietà di quei sistemi in cui il comportamento collettivo di agenti (non sofisticati) che interagiscono localmente con l'ambiente produce l'emergere di una funzionalità globali più complessa nel sistema.

  I sistemi swarm sono caratterizzati dall'assenza di un ente coordinatore. Ad esempio in uno sciame di api, l'ape regina non coordina l'attività delle altre api. Inoltre gli individui (agenti) che costituiscono la collettività sono caratterizzati dal fatto di aver "capacità limitate" e dal non fatto di non conoscere lo stato globale del sistema.


La straordinarietà di queste organizzazioni risiede nel fatto che una gestione complessiva e complessa si ottiene dalla somma di azioni semplici. Si pensi alle funzioni svolte in piena autonomia e senza un ente coordinatore dalle colonie di formiche per costruire il nido, difendere il territorio, procacciarsi il cibo.


Questo tipo di organizzazione si ritrova generalmente nelle specie di animali, come gli insetti, dotati di una quantità molto limitata di intelligenza singola. Per cui essi per sopravvivere devono necessariamente compensare questa lacuna con la collaborazione.


L'aspetto più interessante dei sistemi basati sulla swarm intelligence, rispetto ai sistemi tradizionali, è che l'insieme degli individui che lo compongono lavora senza un controllo centralizzato. Il comportamento collettivo osservabile è, quindi, il frutto delle semplici iterazioni che ha un singolo componente verso gli altri oppure verso l'ambiente.


Risorse

(1) Swarm intelligence, Wikipedia

(2) Swarm behaviour, Wikipedia


~ o ~

§3. Ottimizzazione e stigmergia delle colonie di formiche: Ant Colony Optimization and Stigmergy

#bioInspired #antColonyOptimization #stigmergy

Un esempio tipico di swarm intelligence è rappresentato dalle colonie di formiche. Si pensi per esempio al processo di ricerca del cibo che esse adottano.

Ogni formica, mentre cammina, deposita sul terreno una sostanza chimica, il feromone. La scelta del percorso da seguire alla ricerca del cibo è guidata dall'intensità del feromone: più esso è intenso, più è probabile che venga scelta una determinata direzione; ma il feromone evapora nel tempo, quindi rimarranno "marcati" solo i percorsi usati più di frequente.

Questa tecnica, spesso identificata col termine di "stigmergy", risolve problemi che possono essere ridotti alla ricerca di cammini ottimi in un grafo. L’idea si ispira al comportamento delle formiche che in cerca di cibo esplorano a caso l’ambiente e quando lo trovano ritornano alla colonia lasciando tracce chimiche (feromoni), eventualmente rinforzate da altre formiche.

Resources.

(1) Swarm intelligence, Wikipedia


~ o ~

§4. Algoritmi Evoluzionistici

La teoria dell'evoluzione delle specie animali e vegetali che è stata elaborata da Charles Darwin, lega le possibilità di sopravvivenza di un individuo principalmente alla sua capacità di adattamento all'ambiente (fitness). I mezzi che, in ciascun individuo, caratterizzano tale capacità risiedono nel suo patrimonio genetico, cioè in un insieme di informazioni ereditate anzitutto da padre e madre (crossover) e successivamente assoggettate parzialmente a un processo di cambiamento casuale (mutazione) per far sì che ognuno abbia una identità propria, distinta da quella dei genitori. Gli individui più deboli, meno idonei a far fronte all'ambiente, muoiono, in genere, prima degli altri e, perciò, si riproducono di meno; quelli più forti sopravvivono generalmente più a lungo e si riproducono maggiormente. L'effetto di questo processo è una più diffusa trasmissione delle caratteristiche migliori che, su tempi lunghi, porta automaticamente all'evoluzione della specie e all'esistenza di generazioni in possesso di capacità di adattamento all'ambiente sempre maggiori.

Se ti interessa approfondire i metodi di Intelligenza Artificiale basati su algoritmi evoluzionistici, allora permettimi di invitarti a leggere il seguente articolo, che tratta specificatamente di questo argomento.



Intelligenza Artificiale basata su Algoritmi Evoluzionistici


~ o ~

§5. L'apprendimento profondo: Deep Learning

#BioInspired #AI #ArtificialNeuralNetwork #ANN #DeepLearning #MachineLearning #ArtificialIntelligence #ComputerVision #SpeechRecognition #BigData #GPU #TensorFlow #Python #PyTorch

Tra gli esempi più significativi di Intelligenza Artificiale bio-ispirata troviamo il Deep Learning. Le Reti Neurali Artificiali (Artificial Neural Networks, ANN), infatti, nascono dall'idea di riprodurre, mediante modelli matematici, alcuni principi fondamentali del funzionamento delle reti di neuroni biologici. Pur essendo enormemente più semplici del cervello umano, esse rappresentano uno degli esempi più riusciti di come l'osservazione della natura possa guidare lo sviluppo di nuove tecnologie intelligenti.

L'idea fondamentale consiste nel riprodurre, attraverso modelli matematici, alcuni principi dell'apprendimento biologico. Le Reti Neurali Artificiali sono costituite da unità elementari, chiamate neuroni artificiali, interconnesse tra loro e organizzate in più livelli (layer). Durante la fase di addestramento, le connessioni tra i neuroni vengono progressivamente modificate affinché la rete impari a riconoscere schemi (pattern), relazioni e regolarità presenti nei dati, in modo concettualmente analogo a quanto avviene, seppur con una complessità immensamente maggiore, nel sistema nervoso degli esseri viventi.

Quando il numero di livelli della rete aumenta sensibilmente, si parla di Deep Learning, letteralmente "apprendimento profondo". Il termine deep ("profondo") fa infatti riferimento alla profondità della rete neurale, cioè alla presenza di numerosi livelli nascosti che elaborano progressivamente le informazioni. Ogni livello estrae caratteristiche sempre più astratte dai dati ricevuti: nei sistemi di visione artificiale, ad esempio, i primi livelli imparano a riconoscere bordi e forme semplici, quelli successivi individuano oggetti sempre più complessi, fino ad arrivare al riconoscimento completo di un volto, di un veicolo o di un animale.

Questa capacità di costruire automaticamente (senza l'intervento umano) rappresentazioni sempre più sofisticate dei dati costituisce il principale punto di forza del Deep Learning. A differenza delle tradizionali tecniche di Machine Learning e delle prime reti neurali, nelle quali era l'esperto a dover individuare e programmare manualmente le caratteristiche (feature) più significative da analizzare, nel Deep Learning è la rete stessa che apprende autonomamente le feature durante l'addestramento. Questo riduce drasticamente il lavoro di progettazione, rende i modelli molto più flessibili e permette di affrontare problemi che, con gli approcci tradizionali, sarebbero estremamente complessi o addirittura impraticabili.

Per questo motivo il Deep Learning viene oggi impiegato con successo nella Computer Vision, nel riconoscimento vocale, nella comprensione del linguaggio naturale, nella bioinformatica, nella diagnostica medica, nella Guida Autonoma (Autonomous Driving) e in numerosi altri ambiti. Grazie a queste tecniche è possibile realizzare sistemi capaci di apprendere direttamente da enormi quantità di immagini, video, testi, segnali audio e dati provenienti da sensori, senza dover progettare manualmente le regole o le caratteristiche necessarie per interpretare tali informazioni.

Le basi teoriche delle reti neurali artificiali risalgono addirittura agli anni Quaranta del secolo scorso. È quindi naturale chiedersi perché il Deep Learning sia diventato protagonista soltanto negli ultimi anni. La risposta è semplice: per esprimere tutto il suo potenziale, questa tecnologia richiede enormi quantità di dati e una capacità di calcolo che, fino a pochi anni fa, non era disponibile.

La svolta è arrivata grazie alla convergenza di due fenomeni. Da un lato, l'enorme disponibilità di dati digitali generati quotidianamente da Internet, smartphone, social network, sensori e dispositivi connessi, il cosiddetto fenomeno dei Big Data. Dall'altro, l'impiego delle Graphics Processing Unit (GPU), processori progettati per elaborare migliaia di operazioni in parallelo e quindi particolarmente adatti all'addestramento delle reti neurali profonde. La combinazione di questi due fattori ha permesso di addestrare modelli sempre più grandi e accurati, aprendo la strada alla straordinaria evoluzione dell'Intelligenza Artificiale che stiamo vivendo oggi.

Il successo del Deep Learning dimostra come l'osservazione della natura possa tradursi in soluzioni tecnologiche di enorme impatto. Pur non replicando il cervello umano, le reti neurali artificiali ne riprendono alcuni principi essenziali, confermando uno dei concetti chiave della Vita Artificiale: studiare i meccanismi dei sistemi viventi può ispirare la progettazione di macchine sempre più capaci di apprendere, adattarsi e risolvere problemi complessi.

Tra gli strumenti che hanno contribuito maggiormente alla diffusione del Deep Learning, TensorFlow occupa un posto di primo piano. Si tratta di un framework open source sviluppato da Google che permette di progettare, addestrare e utilizzare reti neurali profonde senza dover implementare manualmente i complessi algoritmi matematici che ne regolano il funzionamento.

Il nome TensorFlow nasce dall'unione delle parole inglesi tensor (la struttura matematica utilizzata per rappresentare dati come immagini, testi, suoni e video) e flow (flusso), a indicare il percorso che questi dati compiono attraversando i diversi livelli della rete neurale durante il processo di apprendimento.

Uno dei principali vantaggi di TensorFlow è quello di automatizzare le operazioni necessarie all'addestramento del modello: l'analisi dei dati, il calcolo degli errori e il continuo aggiornamento dei parametri interni della rete affinché le sue previsioni diventino progressivamente più accurate. In questo modo gli sviluppatori possono concentrarsi sulla progettazione dell'architettura del modello e sulla qualità dei dati, anziché sugli aspetti matematici più complessi.

Oggi TensorFlow rappresenta uno degli strumenti fondamentali per lo sviluppo di applicazioni basate sull'Intelligenza Artificiale in numerosi settori, dalla Visione Artificiale all'elaborazione del linguaggio naturale, dalla medicina alla guida autonoma. Anche nella mia esperienza professionale viene utilizzato come piattaforma di riferimento per l'addestramento di modelli di Deep Learning destinati ad applicazioni industriali per la Diagnostica Ferroviaria.

TensorFlow è un esempio di come l'Intelligenza Artificiale moderna sia nata dall'integrazione tra ricerca scientifica, strumenti open source e comunità globale di sviluppatori.

La sua diffusione è tale che la conoscenza di TensorFlow è diventata una competenza molto apprezzata dal mercato del lavoro. È sufficiente consultare gli annunci pubblicati su LinkedIn per trovare numerose offerte rivolte a sviluppatori, data scientist e ingegneri dell'Intelligenza Artificiale che richiedono esperienza nell'utilizzo di questo framework, spesso insieme ad altri strumenti come Python e PyTorch.

Riferimenti.

Vi consiglio i seguenti riferimenti per approfondire eventualmente questa nuova tecnologia:

1. Apprendimento profondo, Wikipedia, https://it.wikipedia.org/wiki/Apprendimento_profondo
2. Cos’è il Deep Learning: esempi e applicazioni reali, Osservatori .net, https://www.osservatori.net/blog/artificial-intelligence/deep-learning-significato-esempi-applicazioni/
3. Apprendimento profondo, Elementi di analisi per Visione Artificiale -- Paolo Medici, Dipartimento di Ingegneria dell'Informazione di Parmahttps://www.ce.unipr.it/~medici/geometry/node117.html

4. Tateo Interdisciplinary Lifelong Learning, La riproduzione della visione umana per mezzo di un sistema artificiale, https://tateoblog.blogspot.com/p/vs-visione-artificiale.html 

5. Tateo Interdisciplinary Lifelong Learning, Il fenomeno della produzione di grosse quantità di dati, caratteristico delle moderne applicazioni informatiche, https://tateoblog.blogspot.com/p/it1-big-data-evolution-of-data-science.html

6. Tateo Interdisciplinary Lifelong Learning, Il calcolo Parallelo, https://tateoblog.blogspot.com/p/it_17.html

7. Tateo Interdisciplinary Lifelong Learning, Le applicazioni dell'intelligenza artificiale / §11. Guida autonoma  (Autonomous Driving)https://tateoblog.blogspot.com/p/it1-big-data-evolution-of-data-science.html

8. Tutorial italiano TensorFlow e Deep Learning. Corso introduttivo -- Simone Iovane, Mostra passo passo la creazione e l'addestramento di un semplice modello, https://www.youtube.com/watch?v=OkF7UjAI9Jw&utm_source=chatgpt.com

9. Corso italiano di Machine Learning con TensorFlow -- Paolo Galeone, È un corso gratuito con notebook, slide e codice sorgente pubblicati su GitHub, È probabilmente la migliore risorsa gratuita in lingua italiana per chi desidera imparare TensorFlow in modo progressivo, https://github.com/galeone/italian-machine-learning-course

10. TensorFlow Tutorials (Google), È la documentazione ufficiale di Google con decine di tutorial pratici, notebook eseguibili e guide suddivise per argomento. Tutti gli esempi possono essere eseguiti direttamente su Google Colab senza installare TensorFlow sul proprio computer. https://www.tensorflow.org/tutorials?utm_source=chatgpt.com 

11. TensorFlow Playground. Un simulatore interattivo sviluppato da Google che permette di osservare in tempo reale come una rete neurale apprende modificando numero di neuroni, layer, funzione di attivazione, learning rate e dataset. È una delle migliori risorse divulgative mai realizzate sul Deep Learning: consente di "vedere" l'apprendimento di una rete neurale senza scrivere una sola riga di codice. https://playground.tensorflow.org?utm_source=chatgpt.com

4/8-2026


~ o ~

§6. Ispirazioni ai fenomeni natura nell’Informatica e nell’Elettronica

Quello della intelligenza artificiale non è l’unico campo tecnologico in cui ci si ispira ai meccanismi tipici della natura. Esistono applicazioni anche nei settori dell’informatica e dell’elettronica. Sono certo che apprezzerai la lettura anche delle seguenti pagine del mio diario che ho dedicato specificatamente al calcolo neuromorfico per quanto riguarda l’informatica ed all’hardware evolutivo per quanto riguarda l’elettronica:


Informatica ispirata alla natura: il Calcolo Neuromorfico


L'hardware evolutivo


~ o ~


§7. Fonti, riferimenti ed approfondimenti

#deepLearning

In seguito ho riportato alcuni riferimenti alle fonti che ho consultato durante la redazione di questo articolo e che ti suggerisco di utilizzare per approfondire gli argomenti che ho trattato al suo interno.
[ 1 ] AI basata sul deep learning: da HPE nuovi servizi su misura
[ 2 ] Apprendimento profondo, Wikipedia
[ 3 ] Apprendimento profondo, Paolo Medici - Dipartimento di Ingegneria dell'Informazione di Parma


~ o ~

§8. Più in generale

In questo articolo abbiamo parlato di della Vita Artificiale (Artificial Life in lingua Inglese), ossia dei metodi di Intelligenza Artificiale che si ispirano ai principi della Vita, e che, in particolare rappresentano, un esempio di applicazione dell'approccio euristico per la risoluzione di problemi complessi.

Ma se vuoi esaminare l’approccio euristico da un punto di vista più generale, allora permettimi di suggerirti il seguente articolo che ho appositamente dedicato a questo proposito.

L'approccio Euristico e le tecniche meta-Euristiche per la risoluzione dei problemi complessi


~ o ~


§9. Rimani aggiornato



Se sei interessato agli argomenti trattati nell'articolo corrente e vuoi essere informato sui miei aggiornamenti più recenti che trattano di essi, allora ti invito a registrarti:

alla pagina Facebook

"Artificial Intelligence by Tateo's Interdisciplinary Lifelong Learning" (>)


ed alla bacheca Pinterest

"Artificial Intelligence by Tateo's Interdisciplinary Lifelong Learning" (>)


che ho dedicato appositamente per la condivisione delle modifiche più recenti apportate all'area tematica corrispondente di TILLL~Learning (>)


~ o ~


§10. Teniamoci in contatto

Spero che questo articolo, appartenente alla sezione Learning (>) del progetto Tateo's Interdisciplinary Lifelong Learning (TILLL) (>), ti sia piaciuto e che le note e le osservazioni che ho raccolto al suo interno soddisfino i tuoi interessi. 

  Se vuoi rimanere aggiornato sull'evoluzione del progetto TILLL, allora ti invito a seguire i prossimi aggiornamenti che vengono pubblicati sul Blog di TILLL e sulle pagine social dedicate alla community TILLL


  (>Tateo-Blogofficial blog of TILL project

  (>LinkedIn page dedicated to TILL project

  (>Facebook page dedicated to TILL project

  (>Twitter account dedicated to TILL project

  (>Pinterest account dedicated to TILL project

  (>Instagram account dedicated to TILL project


~ o ~ 


§11. Qualcosa su di me

Innanzitutto ti ringrazio per aver visitato una delle pagine del mio blog. Mi chiamo Giovanni Battista Tateo (brevemente Bat) e sono il fondatore e l'autore di un progetto Lifelong Learning Interdisciplinare di cui il blog Tateo~Blog (:::) ne è il mezzo di condivisione. Sono stato in principio un esperto di Informatica, e in seguito sono diventato un Ingegnere Elettronico, specializzato in Automazione Industriale. Sono un appassionato di Intelligenza ArtificialeRealtà VirtualeSimulazione, e sono un esperto di Visione Artificiale applicata all'Automazione Industriale. Attualmente, ed a partire dall'anno 2016, sono impiegato come Proposal Engineer presso la società Mer Mec S.p.A. (:::). Precedentemente, a partire dal 2004, sono stato impiegato, sempre presso la stessa società, come Progettista di Sistemi di Visione Artificiale e di Algoritmi di Elaborazione delle Immagini, applicati in particolare alla Diagnostica Ferroviaria. Sono un sostenitore e promotore dell'apprendimento permanente, dei social network e della condivisione delle conoscenze tramite il web. Se vuoi ulteriori dettagli su di me, visita la pagine About Me (:::)


Riferimenti per contattarmi. In seguito puoi trovare i miei riferimenti personali che puoi utilizzare se vuoi contattarmi personalmente, ed i collegamenti ai miei account social che puoi utilizzare per seguirmi e rimanere in contatto con me tramite le reti di social media


Eng. Tateo Giovanni Battista

    - e-mail: tateogb@libero.it (send e-mail)

    - phone / WhatsApp : (+39) 388 8419726

    - Skype (link)

    - LinkedIn account (link)

    - Facebook account (link)

    - Twitter account (link)

    - Instagram account (link)

    - Pinterest account (link)


-----------------------------------------

Prima pubblicazione: 3/4-2017

Ultimo aggiornamento: 4/8-2026

(c) Tateo's Interdisciplinary Lifelong Learning Lab (TILLL)

sabato 3 dicembre 2016

EVOLUTIONARY (AI.1.3.1.3)

Tateo’s Interdisciplinary Lifelong Learning Project

T I L L L

LEARNING - BLOG - COMMUNITY

Learning, knowledge sharing and Communities engagement about: Artificial Intelligence, Augmented / Virtual / Mixed Reality, Automation, Electronics, Computer Science and Information Technology, Mobile Devices, Problem Solving, Readings, Social Media, Simulation, Artificial Vision, Work and Soft Skills

by Tateo Giovanni Battista

____________________________________________________________________________

LEARNING

ARTIFICIAL INTELLIGENCE

Artificial intelligence based on Evolutionary Algorithms

{L’Intelligenza Artificiale basata su algoritmi evoluzionistici}


Hashtag keywords
: #artificialIntelligence #optimization #heuristics #evolution #geneticAlgorithms #geneticProgramming #TILLL 
#TateoBlog 

Summary. The theory of the evolution of animal and plant species that was developed by Charles Darwin can be effectively considered as a model for synthesizing surprising heuristic methods of optimization or research. The idea is based on the definition of algorithms that mimic the typical mechanisms of natural evolution. Evolutionary Computation is the scientific discipline, sub-branch of Artificial Intelligence, which studies these techniques. Among the most renowned techniques we can mention those of Genetic Algorithms and Genetic Programming. In the article I also share my personal experience in reference to these techniques, telling how my passion for Genetic Algorithms was born, and how I enjoyed applying the evolutionary mechanism of this heuristic optimization technique to various fields, scientific and otherwise

{La teoria dell'evoluzione delle specie animali e vegetali che è stata elaborata da Charles Darwin può essere considerata efficacemente come modello per sintetizzare sorprendenti metodi euristici di ottimizzazione o di ricerca. L’idea si basa sulla definizione di algoritmi che imitino i meccanismi tipici della evoluzione naturale. La Evolutionary Computation è la disciplina scientifica, sotto-branca della Intelligenza Artificiale, che studia queste tecniche. Tra le tecniche più rinomate possiamo citare quelle degli Algoritmi Genetici e della Programmazione Genetica. Nell’articolo condivido anche la mia personale esperienza in riferimento a queste tecniche, raccontando come è nata la mia passione per gli Algoritmi Genetici, e come mi sono divertito ad applicare il meccanismo evolutivo di questa tecnica di ottimizzazione euristica a vari ambiti, scientifici e no}

~ o ~


You are HERE within the TILLL project

{Ti trovi QUI all'interno del progetto TILLL}


                   +--> TILLL-LEARNING
                   |    +--> AI. ARTIFICIAL INTELLIGENCE 
                   |         +--> 1. COMPLEX PROBLEMS 
                   |              +--> 3. HEURISTICS
                   |                   +--> 1. BIO-INSPIRED
                   |                        +--> 3EVOLUTIONARY
                   |                                +--> 1GA
                   |                                +--> 2. GP
                   +--> TILLL-SHARING
                   |    +--> TILLL-BLOG
HOME --> PROJECT --O
                   |
                   +--> TILLL-NETWORKING
                   |
                   +--> 
TILLL-ABOUT ME



~ o ~


i. The evolutionary theory
{La teoria dell'evoluzione}


  The theory of the evolution of animal and plant species that was developed by Charles Darwin, links the chances of survival of an individual mainly to his ability to adapt to the environment (fitness).

  The means that characterize this capacity in each individual reside in their genetic heritage, that is, in a set of information inherited first of all from father and mother (crossover) and subsequently partially subjected to a process of random change (mutation) to ensure that each has its own identity, distinct from that of the parents.
  The weaker individuals, less able to cope with the environment, generally die before the others and, therefore, reproduce less; the stronger ones generally survive longer and reproduce more.
  The effect of this process is a more widespread transmission of the best characteristics which, over a long period of time, automatically leads to the evolution of the species and to the existence of generations possessing ever greater capacity to adapt to the environment.


  {La teoria dell'evoluzione delle specie animali e vegetali, elaborata da Charles Darwin, lega le possibilità di sopravvivenza di un individuo principalmente alla sua capacità di adattamento all'ambiente (fitness).

  I mezzi che caratterizzano questa capacità in ogni individuo risiedono nel suo patrimonio genetico, cioè in un insieme di informazioni ereditate prima di tutto da padre e madre (crossover) e successivamente parzialmente soggette a un processo di cambiamento casuale (mutazione) per garantire che ognuno ha una propria identità, distinta da quella dei genitori.

  Gli individui più deboli, meno capaci di far fronte all'ambiente, generalmente muoiono prima degli altri e, quindi, si riproducono meno; quelli più forti generalmente sopravvivono più a lungo e si riproducono di più.

  L'effetto di questo processo è una trasmissione più diffusa delle migliori caratteristiche che, nel lungo periodo, porta automaticamente all'evoluzione della specie e all'esistenza di generazioni dotate di una sempre maggiore capacità di adattamento all'ambiente}



~ o ~ 


ii. Algoritmi evolutivi


Una volta appurato che i meccanismi evolutivi naturali funzionano, non ci resta altro da fare che copiare dalla natura, ossia costruire un ambiente che simuli l'attività naturale, ossia tutti quei meccanismi che regolano l'evoluzione di una specie piuttosto che di un'altra. Per ottenere questo è necessario ispirarsi alla metafora della genetica delle popolazioni e alla teoria di Darwin sull'evoluzione. Occorre quindi generare una "popolazione" di soluzioni; le caratteristiche dei componenti di questa popolazione devono poter "mutare", in modo casuale oppure indotto; deve essere possibile valutare la "bontà" di ogni elemento della popolazione in confronto ad un determinato problema, in modo da poterne "selezionare" i migliori; deve essere possibile "premiare" le soluzioni migliori per innescare il meccanismo virtuoso della evoluzione.


~ o ~ 


iii. Evolutionary Computation


La disciplina scientifica che raggruppa le tecniche meta-euristiche di ottimizzazione che si basano sui meccanismi ispirati all'evoluzione e alla selezione naturale si chiama "Evolutionary Computation".  Attualmente la Evolutionary Computation annovera tra le proprie fila molte tecniche, le più famose delle quali sono gli "Algoritmi Genetici", le "Strategie Evolutive" e la Programmazione Genetica.


  Algoritmi Genetici. Gli algoritmi genetici (noti col termine Genetic Algorithms in lingua inglese, e sinteticamente GA) sono una tecnica di ottimizzazione euristica proposta da John Holland nel 1975. Prende come modello il processo di evoluzione biologica e consiste nel mantenere un insieme di soluzioni che evolvono usando i principi dell'evoluzione di Darwin.


  Programmazione Genetica. La programmazione genetica (nota col termine Genetic Programming in lingua inglese, e sinteticamente GP), ispirandosi allo stesso principio adattativo della evoluzione biologica, ricerca programmi informatici che riescano a svolgere in maniera ottimale un determinato compito.


La teoria dell'evoluzione della specie può essere utilizzata efficacemente per simulare al computer dei problemi, anche molto complessi, di ottimizzazione o di ricerca, per mezzo di un processo di affinamento progressivo di potenziali soluzioni.



~ o ~ 


iv. Genetic Algorithms

{Algoritmi genetici} 

  The Genetic Algorithms (briefly GA) are complex and adaptive procedures, aimed at solving research and optimization problems, and conceptually based on the principles that regulate the natural evolution of species.
  The idea underlying the GA is therefore to select the best solutions and to combine them again in some way with each other in such a way that they evolve towards an optimum point.

  {Gli Algoritmi Genetici (Genetic Algorithms in lingua Inglese, e brevemente GA) sono procedure complesse e adattative, finalizzate alla risoluzione di problemi di ricerca e ottimizzazione, e basate concettualmente sui principi che regolano l'evoluzione naturale delle specie.
  L'idea che sta alla base degli AG è quindi quella di selezionare le soluzioni migliori e di combinarle nuovamente in qualche modo fra loro in maniera tale che esse evolvano verso un punto di ottimo}

  If you are interested in learning more about Genetic Algorithms, then allow me to invite you to read the following article, that deal specifically by this theme.

  { Se ti interessa approfondire gli Algoritmi Genetici, allora permettimi di invitarti a leggere il seguente articolo, che tratta specificatamente di questo argomento}


Genetic Algorithms

{Algoritmi Genetici}




~ o ~ 


v. Genetic Programming
{Programmazione genetica}

Genetic programming, inspired by the same adaptive principle of biological evolution, searches for computer programs that are able to perform a specific task in an optimal way.
   It should be noted that genetic programming exploits the evolutionary modification of the internal code of programs. So the code and the behavior of the programs are constantly evolving. In practice, GP is a particular machine learning technique. Similarly to what happens for genetic algorithms, it is a heuristic process that does not guarantee a perfect result, but an optimal result that meets certain criteria set by the user.
  {La Programmazione Genetica, ispirandosi allo stesso principio adattativo dell'evoluzione biologica, ricerca programmi informatici che riescano a svolgere in maniera ottimale un determinato compito.
  Si osservi che la programmazione genetica sfrutta la modifica evolutiva del codice interno dei programmi. Quindi il codice ed il comportamento dei programmi sono in continua evoluzione. In pratica la GP costituisce una particolare tecnica di apprendimento automatico. Analogamente a quanto avviene per gli algoritmi genetici, si tratta di un processo euristico che non garantisce un risultato perfetto, bensì un risultato ottimale che rispetti determinati criteri prefissati dall'utente.}
 If you are interested in learning more about Genetic Programming technique and applications, then allow me to invite you to read the following article, that deal specifically by this theme.

  {Se ti interessa approfondire la tecnica e le applicazioni della Programmazione Genetica, allora permettimi di invitarti a leggere il seguente articolo, che tratta specificatamente di questo argomento}


Genetic Programming, that is the extension of the genetic algorithms to the programming world

{La Programmazione Genetica, ossia la estensione degli Algoritmi Genetici al mondo della programmazione}



~ o ~


vi. Sources, References and insight

{Fonti, riferimenti ed approfondimenti}


  Listed below are many references to sources I have consulted during the writing of this article and I suggest you use them to go deeper into the topics covered within.

  {In seguito ho riportato alcuni riferimenti alle fonti che ho consultato durante la redazione di questo articolo e che ti suggerisco di utilizzare per approfondire gli argomenti che ho trattato al suo interno}

  [1] Charles Darwin, Wikipedia

  [2] J.H.Holland. Algoritmi genetici. Le Scienze, n.289, 1992 

  [3]  L.Davis. Handbook of Genetic Algorithms. Van Nostrand Reinhold, 1991 

  [4] J. H. Holland. Adaptation in Natural and Artificial Systems. The University
of Michigan Press, 1975 

  [5] M. Mitchell. An Introduction to Genetic Algorithms. MIT Press, 1996. 

  [6] …

{Spiegazione teorica sugli AG in generale, e una loro applicazione al campo dell'analisi finanziaria}

  [7] …

{Raccolta di lucidi sull'apprendimento delle macchine tramite AG}

  [8] An Overview of Artificial Intelligence

{Introduzione alla Intelligenza Artificiale}



~ o ~ 


vii. More generally

{Più in generale}


  In this article we talked about the Artificial Intelligence techniques based on evolutionary algorithms, like the Genetic Algorithms (GA) and Genetic Programming (GP). These techniques are only some of the heuristics bio-inspired methods used to solve complex problems.

   But if you want to examine the AI techniques inspired to the principles of the life, then allow me to suggest you the reading of the following article which I dedicated to this purpose.

  {In questo articolo abbiamo parlato delle tecniche di Intelligenza Artificiale basate su algoritmi evolutivi, come gli Algoritmi Genetici (GA) e la Programmazione Genetica (GP). Queste tecniche sono solo alcuni dei metodi euristici bio-ispirati utilizzati per risolvere problemi complessi.

    Ma se vuoi approfondire le tecniche di IA ispirate ai principi della vita, allora permettimi di suggerirti la lettura del seguente articolo che ho dedicato a questo scopo}


Artificial Intelligence inspired to the principles of the life: the Artificial Life 

{L'Intelligenza Artificiale ispirata ai meccanismi della vita artificiale: la Artificial Life}

(AI.1.3.1)



~ o ~


viii. Stay up to date

{Rimani aggiornato}

If you are interested in the topics covered in the current article and want to be informed about my most recent updates dealing with them, then I invite you to register:


on the Facebook page

"Artificial Intelligence by Tateo's Interdisciplinary Lifelong Learning" (>)


and at the Pinterest dashboard

"Artificial Intelligence by Tateo's Interdisciplinary Lifelong Learning" (>)


which I dedicated specifically for sharing the most recent changes made to the corresponding thematic area of TILLL~Learning (>).


{Se sei interessato agli argomenti trattati nell'articolo corrente e vuoi essere informato sui miei aggiornamenti più recenti che trattano di essi, allora ti invito a registrarti:


alla pagina Facebook

"Artificial Intelligence by Tateo's Interdisciplinary Lifelong Learning" (>)


ed alla bacheca Pinterest

"Artificial Intelligence by Tateo's Interdisciplinary Lifelong Learning" (>)


che ho dedicato appositamente per la condivisione delle modifiche più recenti apportate all'area tematica corrispondente di TILLL~Learning (>)}



~ o ~

ix. Let's keep in touch
{Teniamoci in contatto}


I hope you enjoyed this article, belonging to the Learning (>) section of the Tateo's Interdisciplinary Lifelong Learning (TILLL) project (>), and that the notes and observations I gathered within it meets your interests. 

  If you want stay tuned with the TILLL project evolution, then I invite you to follow the next upgrades that are published on the TILLL's Blog and on the social media pages dedicated to the TILLL community.


  {Spero che questo articolo, appartenente alla sezione Learning (>) del progetto Tateo's Interdisciplinary Lifelong Learning (TILLL) (>), ti sia piaciuto e che le note e le osservazioni che ho raccolto al suo interno soddisfino i tuoi interessi. 

  Se vuoi rimanere aggiornato sull'evoluzione del progetto TILLL, allora ti invito a seguire i prossimi aggiornamenti che vengono pubblicati sul Blog di TILLL e sulle pagine social dedicate alla community TILLL}


  (>Tateo-Blogofficial blog of TILL project

  (>LinkedIn page dedicated to TILL project

  (>Facebook page dedicated to TILL project

  (>Twitter account dedicated to TILL project

  (>Pinterest account dedicated to TILL project

  (>Instagram account dedicated to TILL project



~ o ~

x. Something about me, the founder and author of Tateo~Blog Project
{Qualcosa su di me, il fondatore e sull'autore del progetto Tateo~Blog}

First of all, thank you for visiting one of the pages of my blog. My name is Giovanni Battista Tateo (shortly Bat) and I am the founder and author of a project of Interdisciplinary Lifelong Learning of which the Tateo~Blog (:::) blog is the means of sharing. I was initially an Information Technology expert, and later I became an electronic engineer, specializing in industrial Automation. I'm passionate about Artificial intelligenceVirtual RealitySimulation, and I'm an expert in Artificial Vision applied to industrial Automation. Currently, and starting four years ago, I am employed as a Proposal Engineer at Mer Mec S.p.A. (:::) company. Previously, starting in 2004, I was employed, always at the same company, as a Designer of Artificial Vision Systems and Image Processing Algorithms, applied in particular to Railway Diagnostics. I am a supporter and promoter of Lifelong LearningSocial Networking and Knowledge Sharing by means of the web. If you want more details about me, visit the About Me (:::) page.


{Innanzitutto ti ringrazio per aver visitato una delle pagine del mio blog. Mi chiamo Giovanni Battista Tateo (brevemente Bat) e sono il fondatore e l'autore di un progetto Lifelong Learning Interdisciplinare di cui il blog Tateo~Blog (:::) ne è il mezzo di condivisione. Sono stato in principio un esperto di Informatica, e in seguito sono diventato un Ingegnere Elettronico, specializzato in Automazione Industriale. Sono un appassionato di Intelligenza ArtificialeRealtà VirtualeSimulazione, e sono un esperto di Visione Artificiale applicata all'Automazione Industriale. Attualmente, ed a partire dall'anno 2016, sono impiegato come Proposal Engineer presso la società Mer Mec S.p.A. (:::). Precedentemente, a partire dal 2004, sono stato impiegato, sempre presso la stessa società, come Progettista di Sistemi di Visione Artificiale e di Algoritmi di Elaborazione delle Immagini, applicati in particolare alla Diagnostica Ferroviaria. Sono un sostenitore e promotore dell'apprendimento permanente, dei social network e della condivisione delle conoscenze tramite il web. Se vuoi ulteriori dettagli su di me, visita la pagine About Me (:::)}


  References to contact me. Following you can find my personal references that you can use if you want to contact me directly, and the links to my social accounts that you can use to follow me or to keep in touch with me by means of social media networks.

  {Riferimenti per contattarmi. In seguito puoi trovare i miei riferimenti personali che puoi utilizzare se vuoi contattarmi personalmente, ed i collegamenti ai miei account social che puoi utilizzare per seguirmi e rimanere in contatto con me tramite le reti di social media}


Eng. Tateo Giovanni Battista

    - e-mail: tateogb@libero.it (send e-mail)

    - phone / WhatsApp : (+39) 388 8419726

    - Skype (link)

    - LinkedIn account (link)

    - Facebook account (link)

    - Twitter account (link)

    - Instagram account (link)

    - Pinterest account (link)


-----------------------------------------

TILLL~Learning © November 7, 2021

Translate

🧠 No-code / Low-code

TILLL / 🏠 HOME / ... ... ✍️ TateoBlog / 03/09/26 14:01 👈 sei qui.  ... 🎓 Learning /   🧠 Intelligenza Artificiale   /  generativa...

Most popular posts in the last week.