Applications of Evolutionary Algorithms Giuseppe Nicosia Dep. of Mathematics and Computer Science University of Catania.

Slides:



Advertisements
Presentazioni simili
Apprendimento per rinforzo
Advertisements

Prof. Salvatore Di Gregorio Dr. William Spataro Dr. Donato D’Ambrosio
E.Mumolo AGENTI CHE RAGIONANO LOGICAMENTE Logica fuzzy nella navigazione di robot autonomi E.Mumolo
Tipologie di Controlli in Ambito Industriale
Evolvere robot stigmergici in Evorobot*
Controllo remoto di un robot mobile realizzato con Lego Mindstorms
Controllo remoto di un robot mobile realizzato con Lego Mindstorms
Reti neurali per la percezione dell’ambiente in robotica autonoma
Reti Neurali: studi sull'intelligenza artificiale
Introduzione allinformatica. Cosè linformatica ? Scienza della rappresentazione e dellelaborazione dellinformazione ovvero Studio degli algoritmi che.
Apprendimento: Regola “Delta”
Ricerca della Legge di Controllo
BIOINGEGNERIA S. Salinari Lezione 4.
Introduzione ai PLC.
Physically-based Animations of 3D Biped Characters with Genetic Algorithms Università di Roma La Sapienza Relatore: Prof. Marco Schaerf Correlatore: Ing.
Le cause del moto: la situazione prima di Galilei e di Newton
Algoritmi Genetici Prof. Salvatore Di Gregorio Dr. William Spataro Dr. Donato DAmbrosio Modelli Computazionali per Sistemi Complessi A.A. 2003/2004 Università
Modelli simulativi per le Scienze Cognitive Paolo Bouquet (Università di Trento) Marco Casarotti (Università di Padova)
Modelli simulativi per le Scienze Cognitive
Reti Neurali Ricorrenti
Pg 1 Agenda di oggi Agenda di oggi Le tre leggi di Newton Come e perchè un oggetto si muove? Dinamica.
INTRODUZIONE Il termine Informatica deriva dalla fusione dei termini INFORmazione autoMATICA si intende indicare la scienza che ha il compito di raccogliere,
Intelligenza Artificiale Algoritmi Genetici
Intelligenza Artificiale
Apprendimento Automatico Apprendimento non supervisionato:
CALCOLO EVOLUZIONISTICO. In ogni popolazione si verificano delle mutazioni. Le mutazioni possono generare individui che meglio si adattano allambiente.
Apprendimento Automatico Calcolo Evoluzionistico Stefano Cagnoni.
Labortaorio informatica 2003 Prof. Giovanni Raho 1 INFORMATICA Termini e concetti principali.
Algoritmi Genetici Alessandro Bollini
Programmazione Genetica
Rivelatori al silicio a deriva
Daniele Mazzei. Obbiettivi del progetto Realizzazione di un minirobot utilizzando componenti elettronici di base. Apprendere i sistemi di programmazione.
ENERGIA SOLARE.
Il rapporto di trasmissione.
E.T.R. ELETTRONICA I.T.I. OMAR Novara Dipartimento di Elettronica
L' ARCHITETTURA DI VON NEUMANN
UNIVERSITÀ DEGLI STUDI DI PAVIA
INTRODUZIONE LIVELLO ASPETTI DOMINANTI Sistema Corpo umano
La Funzione Sinusoidale
Meccanismi e movimento
Potenziometri I trasduttori lineari di posizione serie PL sono potenziometri estremamente robusti per applicazioni industriali. Le loro caratteristiche.
Tipo di prensione ed effetti di compatibilità: una simulazione connessionista Giorgio Tsiotas Anna M. Borghi
TEST MEDICINA 2011.
Programma di Informatica Classi Prime
Informatica Lezione 4 Scienze e tecniche psicologiche dello sviluppo e dell'educazione Anno accademico:
Teoria e Metodologia del movimento umano
Perceptron. è la somma effettuata sul nodo i-esimo dello strato j n è il numero di nodi dello strato j-1 è l'output proveniente dal nodo k-esimo dello.
Istituto Comprensivo n.7 “L. Orsini”
INSEGUITORE SOLARE CON ARDUINO
PRINCIPI DI FUNZIONAMENTO
POLITECNICO DI MILANO Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica STUDIO E REALIZZAZIONE DI UN BRACCIO ROBOTICO ANTROPOMORFO E SOLUZIONE.
Memorie di massa.
Teoria e metodologia del movimento umano BrainFarm Caligiuri Giuseppe Costa Emanuela Levato Chiara Multari Elisa Oliva Carmen.
MICROPROCESSORI Un processore è un circuito integrato in grado di effettuare operazioni di calcolo o di elaborazione dell'informazione Il circuito contiene.
Alessandro Bollini Dipartimento di Informatica e Sistemistica Università di Pavia Via Ferrata, Pavia Algoritmi Evolutivi.
Daniele Mazzei. Obbiettivi del progetto Realizzazione di un minirobot utilizzando componenti elettronici di base. Apprendere i sistemi di programmazione.
Embedded System: l’airbag
LA ROBOTICA L’uomo ha sempre desiderato demandare compiti ripetitivi o pesanti a delle macchine. I precursori degli attuali robot furono creati dagli antichi.
Il moto e la velocità.
La motivazione come determinante del comportamento di organismi artificiali: una simulazione di Artificial Life Relatore: Chia.mo Prof. Roberto Serra Correlatore:
La struttura di un computer
Moti della Terra: Rotazione , Rivoluzione e Moti Millenari
Implementazioni di un analizzatore di protocollo Esistono quattro fondamentali tradeoff per la realizzazione di un analizzatore di protocollo:  Analisi.
Esercizio-Tre blocchi di massa rispettivamente m 1 =5Kg, m 2 =2 Kg e m 3 =3Kg poggiano su un piano orizzontale e sono uniti da due funi (vedi figura).
IL PLC AUTOMAZIONE INDUSTRIALE
Gestione delle periferiche. Le periferiche sono dispositivi che permettono le operazioni di input/output.
Laboratorio evoluzione Marcello Sala LA PIÙ GRANDE INVENZIONE [S. J. Gould, “Regni senza ruote”, in: Quando i cavalli avevano le dita, Feltrinelli 1984]
Componenti base di un computer Gli elementi fondamentali La Cpu La Ram L’ Hard disk.
Transcript della presentazione:

Applications of Evolutionary Algorithms Giuseppe Nicosia Dep. of Mathematics and Computer Science University of Catania

Robotica Evolutiva

L'evoluzione di un'abilità di navigazione usando un robot fisico E possibile [Floreano e Mondada, 1994] addestrare delle reti neurali per il controllo di un robot autonomo che deve svolgere un compito di navigazione ed evitando gli ostacoli. Per questo esperimento Floreano e Mondada si sono serviti di un micro-robot di fabbricazione svizzera chiamato Khepera (

Robot Khepera Il robot (Mondada, Franzi e Ienne 1993) possiede una forma circolare con un diametro di 55 mm, un'altezza di 30 mm ed un peso di 70 g; esso si poggia su due ruote che hanno due piccoli supporti di Teflon. Le ruote, controllate da due motori DC, possono muoversi in entrambe le direzioni. Il robot dispone di 8 sensori di prossimità all'infrarosso (sei posizionati sulla parte frontale del robot e due nella parte posteriore).

Robot Khepera 2 Il microprocessore motorola con 256 Kbytes di RAM e di 512 Kbytes di ROM elabora tutte le routine input-output e può comunicare con un computer attraverso uno speciale cavo con contatti rotanti. Questa configurazione permette di sfruttare le capacità di memoria del computer esterno che può essere usato per registrare e analizzare il comportamento del robot e nel contempo per fornire energia elettrica al robot evitando tutti i problemi di ricarica delle batterie.

Ambiente L'ambiente in cui il robot agisce è costituito da uno spazio piano delimitato da mura di forma irregolare. Le dimensioni esterne di tale spazio sono approssimativamente 80 x 50 cm. Le mura sono state realizzate con del polistirolo celeste e il pavimento con un cartoncino grigio. Una lampadina di 60 watt è stata usata per illuminare costantemente l'ambiente.

Obiettivo L'obiettivo degli autori è quello di sviluppare un sistema di controllo per Khepera in grado di evitare ostacoli mantendo la traiettoria più lineare possibile e la velocità più alta possibile. L'addestramento evolutivo è stato realizzato implementando un algoritmo genetico standard (Goldberg 1989) con generazioni composte da 80 individui ognuno dei quali può compiere 80 azioni.

Architettura della rete neurale L'architettura della rete neurale è fissa ed è formata da un solo strato di pesi sinaptici che connettono gli otto sensori di Khepera con due unità di uscita. Le unità di uscita, direttamente collegate ai due motori di Khepera, hanno una soglia di attivazione adattiva, una funzione di attivazione sigmoide e connessioni ricorrenti. I pesi sinaptici e le soglie sono stati codificati nel genotipo come numeri reali.

LAlgoritmo Genetico Ogni azione motoria dura 300 ms. Ogni azione motoria dura 300 ms. La riproduzione degli individui è sessuata e di conseguenza sono stati usati entrambi gli operatori genetici, mutazioni e crossover. criterio di fitness utilizzato (F) è una funzione della velocità di rotazione delle due ruote e dei valori di attivazione dei sensori di prossimità con attività massima (I): La riproduzione degli individui è sessuata e di conseguenza sono stati usati entrambi gli operatori genetici, mutazioni e crossover. Il criterio di fitness utilizzato (F) è una funzione della velocità di rotazione delle due ruote e dei valori di attivazione dei sensori di prossimità con attività massima (I): F = V * (1 - sqrt ( DV ) ) * ( 1 - I )

Fitness function F = V * (1 - sqrt ( DV ) ) * ( 1 - I ) F ha tre componenti: la prima è massimizzata dalla velocità (V), la seconda dal movimento in direzione rettilinea (DV indica la differenza di rotazione delle ruote) e la terza dall'evitamento di ostacoli (I è tanto più grande quanto più il robot è vicino a un ostacolo).

Evoluzione nellambiente reale E importante notare che l'intero processo evolutivo viene realizzato interamente sul robot reale. Ciò significa che ogni rete di ogni generazione viene valutata lasciando il robot agire nell'ambiente reale per 80 passi (il «sistema nervoso» di ogni individuo viene sequenzialmente «iniettato» nel medesimo robot fisico).

Risultati In meno di 100 generazioni, Khepera evolve la capacità di muoversi evitando gli ostacoli (next slide). Comunque, già in prossimità della 50 a generazione, i migliori individui esibiscono un comportamento quasi ottimale. Gli ostacoli vengono evitati aggirandoli dolcemente senza urtare con le mura o incastrarsi negli angoli ( Floreano e Mondada 1994). Gli ostacoli vengono evitati aggirandoli dolcemente senza urtare con le mura o incastrarsi negli angoli ( Floreano e Mondada 1994). Ciascuna delle tre simulazioni richiede circa 60 ore. Ciascuna delle tre simulazioni richiede circa 60 ore.

Fitness del migliore individuo di ogni generazione Il grafico mostra i valori medi e lo scarto quadratico medio di tre simulazioni (cioè di tre processi evolutivi condotti partendo da generazioni iniziali casualmente diverse).