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

domenica 7 novembre 2021

From Genetic Algorithms to Genetic Programming

{Dagli Algoritmi Genetici alla Programmazione Genetica}


  Like any engineering innovation, genetic programming did not emerge fully formed from the aether. Rather it arose from two promising but not yet realized lines of research in computer science: genetic algorithms and artificial intelligence.
  {Come ogni innovazione ingegneristica, la programmazione genetica non è emersa completamente formata dall'etere. Piuttosto è nato da due linee di ricerca promettenti ma non ancora realizzate in informatica: algoritmi genetici e intelligenza artificiale.}

  The mechanism of genetic algorithms is so fascinating that in the nineties some researchers had the idea of extending the evolutionary principle to the internal code of computer programs, effectively creating a population in which individuals are computer programs dedicated to accomplishing the same task.
  {Il meccanismo degli algoritmi genetici è così affascinante che negli anni novanta alcuni ricercatori ebbero l'idea di estendere il principio evoluzionistico al codice interno dei programmi informatici, creando a tutti gli effetti una popolazione in cui gli individui sono programmi informatici dedicati a compiere lo stesso compito.}

“It occurred to me that perhaps the technique of genetic algorithms could be combined with the basic principles of artificial intelligence to evolve a population of programs.“

"Mi è venuto in mente che forse si potrebbe combinare la tecnica degli algoritmi genetici con i principi  di base dell'intelligenza artificiale per far evolvere una popolazione di programmi."
 
(John Koza, 1998)

  John Koza, to whom the authorship of this new line of research is attributed, has put to use one of the most brilliant intuitions of artificial intelligence. In fact, Koza's thesis advisor at the University of Michigan was John Holland, the man widely considered the father of genetic algorithms.
  Remember that John Holland was a university student from Michigan in the 1950s and that upon coming across a book on genetics called "The Genetical Theory of Natural Selection", written by the British biologist Ronald Fisher in 1930, he had the intuition to apply the principles the evolution of the species, and in particular of natural selection, for the heuristic solution of complex problems. The book, in fact, expounded, in rigorous mathematical terms, the basic mechanism of variation in plants and animals. Holland envisioned a system that through small incremental improvements would generate a good solution in the same way a farmer grows good corn. John Holland's genetic algorithms were in effect the precursors of John Koza's idea, in the same way that Mendelian inheritance was the first step towards understanding Darwinian evolution.
  {John Koza, a cui si attribuisce la paternità di questa nuova linea di ricerca, ha messo a frutto una delle più brillanti intuizioni dell’intelligenza artificiale. Infatti il relatore di tesi di Koza all'Università del Michigan fu proprio John Holland, l'uomo ampiamente considerato il padre degli algoritmi genetici.   
  Si ricordi che John Holland era uno studente universitario di Michigan negli anni 50’ e che imbattendosi in un libro di genetica  intitolato “The Genetical Theory of Natural Selection”, scritto dal biologo inglese Ronald Fisher nel 1930, ebbe l’intuizione di applicare i principi della evoluzione della specie, ed in particolare della selezione naturale, per la risoluzione euristica di problemi complessi. Il libro, infatti, esponeva, in termini matematici rigorosi, le basi meccanismo di variazione nelle piante e negli animali. Holland immaginò un sistema che attraverso piccoli miglioramenti incrementali, avrebbe generato una buona soluzione  nello stesso modo in cui un contadino coltiva un buon mais. Gli algoritmi genetici di John Holland sono stati a tutti gli effetti i precursori dell’idea di John Koza, nello stesso modo in cui l'ereditarietà Mendeliana è stato il primo passo verso la comprensione dell'evoluzione Darwiniana.}

  John Holland practically implemented the idea of genetic algorithms in 1980 together with his student David Goldberg, applying it in particular to pipeline optimization. Goldberg, in fact, before working on his PhD, had studied civil engineering, and was interested in the practical problem of how computers could be used to optimize pipeline capacity.
  {John Holland implementò praticamente l’idea degli algoritmi genetici nel 1980 insieme al suo studente David Goldberg, applicandola in particolare alla ottimizzazione dei gasdotti. Goldberg, infatti, prima di lavorare al suo dottorato di ricerca, aveva studiato ingegneria civile, ed era interessato al problema pratico di come i computer potessero essere usati per ottimizzare la capacità dei gasdotti.}

John Koza's technique that extends the concept of genetic algorithm to the world of programming is known as Genetic Programming (known by the term Genetic Programming in English, and synthetically GP).
Genetic programming, in fact, 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 tecnica di John Koza che estende il concetto di algoritmo genetico al mondo della programmazione è nota col nome di Programmazione Genetica (nota col termine Genetic Programming in lingua inglese, e sinteticamente GP).
La programmazione genetica, infatti, 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.}

Hashtag keywords: #GP #geneticProgramming #GA #geneticAlgorithms #Koza #Holland #Goldberg #TateoBlog #TILLL


Extract from: Genetic Programming, that is the extension of the genetic algorithms to the programming world, TILLL-Learning


_____________________________________________________________________________

Tateo’s Interdisciplinary Lifelong Learning Project

T I L L L

LEARNING - SHARING - NETWORKING

Learning, knowledge sharing and communities engagement about:

Artificial Intelligence; Augmented, Virtual and Mixed Reality; Automation; Electronics; Computer Science and Information Technology; Mobile Technologies; Problem Solving; Readings; Social Media; Modeling and Simulation; Artificial Vision; Hard and Soft Work Skills.

by Tateo Giovanni Battista

_____________________________________________________________________________

TILLL~Blog © November 7, 2021

domenica 12 settembre 2021

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}


Bat. 21-912


Extract from: Artificial intelligence based on Evolutionary Algorithms, Tateo’s Interdisciplinary Lifelong Learning Project


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


Link: https://tateoblog.blogspot.com/2016/12/ai-03-algoritmi-genetici.html


_____________________________________________________________________________

 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

_____________________________________________________________________________

Tateo~Blog © September 12 2021

lunedì 30 agosto 2021

Synthesis of aromas

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

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

Application of Genetic Algorithms to the synthesis of aromas: the mathematics of the taste

{L’applicazione dei GA alla sintesi degli aromi: la matematica del gusto}


Using "genetic programming," researchers help flavor companies understand what their customers like. 

{Usando la "programmazione genetica", i ricercatori aiutano le aziende degli aromi a capire che cosa piace ai loro clienti}


Bat. 21-830


From: TILL Project, Tateo’s Interdisciplinary Lifelong Learning Project

https://tateoblog.blogspot.com/2015/11/la-matematica-del-gusto.html


Hashtag keywords: #TateoBlog #artificialIntelligence #optimization #geneticProgramming #GP #evolutionaryIntelligence #bioInspired,#heuristics

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

Tateo~
Blog © August 30 2021

martedì 10 novembre 2015

AROMAS (AI.1.3.1.3.1.2)

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

Application of Genetic Algorithms to the synthesis of aromas: the mathematics of the taste

{L’applicazione dei GA alla sintesi degli aromi: la matematica del gusto}



Hashtag keywords
: #TateoBlog #artificialIntelligence #optimization #geneticProgramming #GP #evolutionaryIntelligence #bioInspired,#heuristics

Summary. Using "genetic programming," researchers help flavor companies understand what their customers like. 

{Usando la "programmazione genetica", i ricercatori aiutano le aziende degli aromi a capire che cosa piace ai loro clienti}


You are here: <TILL> - <LEARNING> - <ARTIFICIAL INTELLIGENCE> - <COMPLEX PROBLEMS> - <HEURISTICS> - <BIO-INSPIRED> - <EVOLUTIONARY> - <GA> - <AROMAS>



~ o ~ 


1. 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.


~ o ~ 


2. Flavor Companies. 

Le "flavor companies" sono le aziende degli aromi. Esse producono e vendono composti aromatici che sono utilizzati in alimenti e bevande, in profumi ed in prodotti per l'igiene e la cura del corpo, ed in tanti altri prodotti domestici. Gli aromi possono essere utilizzati per migliorare o esaltare i sapori naturali degli alimenti, nonché per mascherare quelli spiacevoli causati dalla presenza o dalla trasformazione di altri additivi.

E' evidente che la sintesi degli aromi è un business multimiliardario. Le grandi flavor companies spendono decine di milioni di dollari ogni anno in ricerca e sviluppo. Una buona parte di questi investimenti sono destinati ai test eseguiti sui consumatori. Questi test sono molto importanti in quanto in funzione delle loro indicazioni si decideranno i sapori e gli odori dei prossimi prodotti.

La fase più complicata consiste nella interpretazione delle preferenze fornite dai consumatori a seguito dei test. Esse possono essere così eterogenee da non far emergere un consenso chiaro. Oltretutto ad uno stesso soggetto non si possono sottoporre molti campioni di aroma, perché dopo un certo limite i senso dell'olfatto va in sofferenza e il suo potere di discriminare gli odori "gradevoli" da quelli "sgradevoli" diventa inaffidabile. Lo stesso vale anche per il gusto, per quanto riguarda la discriminazione dei sapori. Le "flavor companies" quindi, trovandosi di fronte pochi dati e per lo più contraddittori, non riescono a prendere nessuna decisione.

Una delle più grandi "flavor companies" al mondo, la svizzera Givaudan, ha chiesto aiuto ai ricercatori del MIT (Massachusetts Institute of Technology) per analizzare i risultati di un test sul gusto. I ricercatori stanno utilizzando la tecnica della programmazione genetica, in cui i modelli matematici competono tra loro per adattarsi il più possibile ai dati disponibili. I modelli più accurati, quindi, si incrociano tra loro per produrre modelli ancora più accurati.

Il test ha coinvolto 69 soggetti, ognuno dei quali ha valutato 36 diverse combinazioni di sette aromi di base, assegnando a ciascuno di essi uno punteggio in base al gusto personale.

Per ogni soggetto, sono state generate casualmente delle funzioni matematiche in grado di predire i punteggi in base alle concentrazioni dei diversi aromi. Ogni funzione è valutata in base a due criteri: precisione e semplicità. Una funzione che, ad esempio, prevede le preferenze di un soggetto in modo abbastanza preciso con un singolo fattore, diciamo per esempio la concentrazione di burro, potrebbe rivelarsi più utile di uno che produce una previsione leggermente più accurata, ma richiede una manipolazione matematica complessa di tutte le sette variabili.

Dopo che tutte le funzioni sono state valutate, quelle che forniscono previsioni povere sono tagliate fuori. Gli elementi delle funzioni sopravvissute sono ricombinati in modo casuale per produrre una nuova generazione di funzioni, le quali vengono quindi valutate per la precisione e semplicità. L'intero processo viene ripetuto circa 30 volte, fino a quando non converge su una serie di funzioni che rappresentano bene le preferenze di un singolo soggetto.

Affinché il metodo dei ricercatori del MIT produca i profili dei soggetti sottoposti al test dei singoli gusti, si può ordinare in gruppi distinti.

Potrebbe capitare, per esempio, che i soggetti sottoposti alla prova tendono ad avere forti preferenze sia per la cannella che per la noce moscata, ma non entrambe. Quindi, per cercare di stabilire la precisione del loro modello, essi invece costruito un altro modello.

Attraverso una operazione di marketing per gli amanti della cannella, ed un'altra operazione per agli amanti della noce moscata, una società potrebbe fare molto meglio che da un prodotto di marketing ad entrambi.

I ricercatori, una volta definito il modello rappresentativo di ognuno dei soggetti sottoposti al test, hanno avuto la necessità di verificare l'accuratezza dei modelli nel predire il comportamento dei soggetti di fronte a nuovi aromi. Quindi, per cercare di stabilire l'accuratezza dei propri modelli, essi hanno costruito un altro modello.


~ o ~ 


3. More generally

{Più in generale}


Se sei curioso di conoscere altre applicazioni interessanti della programmazione genetica, allora ti invito a visitare la seguente pagine del mio diario dedicata alla spiegazione della tecnica ed alle sue applicazioni.
AI-03 Algoritmi e programmazione genetica

Se ti interessa conoscere le altre tecniche che, come la programmazione genetica, sono utili per la risoluzione di problemi complessi, allora ti invito a leggere la seguente pagina del mio diario che ho dedicato a questo proposito.
AI-02 Ottimizzazione dei problemi complessi

~ o ~ 


4. Let's keep in touch

{Teniamoci in contatto}


I hope you enjoyed this article that belongs to the Learning (>) section of Tateo~Blog (>), and that the notes and observations I gathered within it have met your interest. If my work has stimulated your interest, I invite you to follow the last blog updates on the following social media pages:

{ Mi auguro che tu abbia apprezzato questo post che appartiene alla sezione Learning (>) di Tateo~Blog (>), e che le note e le osservazioni che ho raccolto al suo interno abbiano incontrato il tuo interesse. Se il mio elaborato ha stimolato il tuo interesse ti invito a seguire gli ultimi aggiornamenti del blog sulle seguenti pagine dei social media: }

Tateo~Blog 

     on LinkedIn (link)

     on Facebook (link)


~ o ~ 


5. 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 intelligence, Virtual Reality, Simulation, 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 Learning, Social 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 Artificiale, Realtà Virtuale, Simulazione, 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 (:::). }


Mine References

  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.

  { 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)


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

Tateo~Learning © August 30, 2021

Translate

⚗️ Atomo e particelle

♾️ 🏠 Home > 📝 TateoBlog > ⚗️ Atomo e particelle 👈 Sei qui #chimica, #atomo #particelleSubatomiche #protoni #neutroni #el...

Most popular posts in the last week.