Evoluzione Grammaticale



Похожие документы
Page 1. Evoluzione. Intelligenza Artificiale. Algoritmi Genetici. Evoluzione. Evoluzione: nomenclatura. Corrispondenze natura-calcolo

Introduzione agli Algoritmi Genetici Prof. Beatrice Lazzerini

Introduzione agli Algoritmi Genetici Prof. Beatrice Lazzerini

Intelligenza Artificiale. Introduzione al calcolo evolutivo

Breve introduzione al Calcolo Evoluzionistico

Cos è un Calcolatore?

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Riproduzione Crossover Mutazione

STRINGHE di un ALFABETO. Consideriamo un alfabeto di simboli V V è un insieme finito e non vuoto. Alfabeto della lingua inglese I={a,b,c,..

Parte I. Prima Parte

Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica

Il Modello Relazionale

Rappresentazione dei numeri in un calcolatore

Quadro comune europeo di riferimento per le lingue. Apprendimento, insegnamento, valutazione

Elena Baralis 2013 Politecnico di Torino 1

La gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1)

Vincoli di integrità

(anno accademico )

MESA PROJECT ITIS G. Cardano Pavia New Curriculum

LINGUAGGI DI PROGRAMMAZIONE

Quadratic assignment Problem: The Hospital Layout

Il Modello Relazionale

INFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno

Gli algoritmi: definizioni e proprietà

SISTEMI INFORMATIVI AVANZATI -2010/ Introduzione

PIANO DI LAVORO DEI DOCENTI

Semantica operazionale dei linguaggi di Programmazione

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA

CONCETTO DI LIMITE DI UNA FUNZIONE REALE

Metodologie di programmazione in Fortran 90

Basi di dati. Concetti introduttivi ESEMPIO. INSEGNAMENTI Fisica, Analisi, Aule. Docenti. Entità Relazioni Interrogazioni. Ultima modifica: 26/02/2007

Implementazione parallela di algoritmi genetici per la stima di HMM

Fondamenti di Informatica II

PROCESSO DI INDICIZZAZIONE SEMANTICA

Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro

Funzioni in C. Violetta Lonati

Attributi e domini. A per {A}; XY per X Y (pertanto A 1 A 2 A 3 denota

Modello Relazionale. Modello Relazionale. Relazioni - Prodotto Cartesiano. Relazione: tre accezioni. Es. Dati gli insiemi

IL PORTAFOGLIO EUROPASS PER LA TRASPARENZA E LA MOBILITÀ. Luogo Presentazione: Verona Autore: Silvia Lotito Data: 27 novembre 2015

Organizzazione degli archivi

con ANTLR tesi di laurea Anno Accademico Relatore Ch.mo prof. Porfirio Tramontana Candidato Fabio Canova Matr

Progetto ECDL INFORMAZIONI GENERALI

Indice. Capitolo 1: Introduzione Premessa Scopi Organizzazione del lavoro 4

3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Algoritmi Genetici. e programmazione genetica

GLI APPARATI PER L INTERCONNESSIONE DI RETI LOCALI 1. Il Repeater 2. L Hub 2. Il Bridge 4. Lo Switch 4. Router 6

A3_4 V2.2 Analisi dei Requisiti e Specifica Relazioni con le altre fasi

Stimare il WCET Metodo classico e applicazione di un algoritmo genetico

Monitor. Introduzione. Struttura di un TDA Monitor

Ottimizazione vincolata

Introduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico

MATLAB. Caratteristiche. Dati. Esempio di programma MATLAB. a = [1 2 3; 4 5 6; 7 8 9]; b = [1 2 3] ; c = a*b; c

ARCHIVIO GRAFICO ESTESO

Introduzione. Università degli studi di Cassino. Ing. Saverio De Vito Tel.:

Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP

Istituto Universitario Navale Facoltà di Ingegneria Corso di Laurea in Ingegneria delle Telecomunicazioni

TECNICHE DI SIMULAZIONE

Questionario di interessi professionali Q.I.P.

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

Soluzioni integrate per la gestione del magazzino

.y 6. .y 4. .y 5. .y 2.y 3 B C C B. B f A B f -1

Lezione 8. La macchina universale

Capitolo 7: Teoria generale della calcolabilitá

Ricerca Operativa A.A. 2007/2008

REGOLAMENTO CONTENENTE I CRITERI PER L EROGAZIONE DEI PREMI DI RISULTATO AL PERSONALE DIPENDENTE

Prof. Alberto Postiglione Scienze della Comunicazione. Università degli Studi di Salerno

Indice dell'opera. Prefazione. Capitolo 1 Introduzione alla genetica Genetica classica e moderna Genetisti e ricerca genetica Sommario

Informatica. Rappresentazione dei numeri Numerazione binaria

Capitolo Quarto...2 Le direttive di assemblaggio di ASM Premessa Program Location Counter e direttiva ORG

PROGETTAZIONE CONCETTUALE

la scienza della rappresentazione e della elaborazione dell informazione

DESCRIZIONE DOCUMENTO: prove di verifica di matematica adattate da prove Invalsi per la classe 2^

Progettazione di Basi di Dati

LA FORMAZIONE E LA CONSERVAZIONE DELLA MEMORIA DIGITALE

Progettaz. e sviluppo Data Base

Javascript: il browser

uniformità di indirizzi e di livelli di sicurezza semplicità in fase di progettazione e di controllo

Caratteristiche principali. Contesti di utilizzo

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori

Fincati Gestionale 1: nuove funzioni per i campi calcolati relative alla tracciabilità documentale

Introduzione. AMPL Introduzione. F. Rinaldi. Dipartimento di Matematica Università di Padova. Corso di Laurea Matematica. F. Rinaldi AMPL Introduzione

Automazione Industriale (scheduling+mms) scheduling+mms.

Manuale della qualità. Procedure. Istruzioni operative

Elementi di informatica

La reingegnerizzazione dei processi nella Pubblica Amministrazione

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Progetto di Applicazioni Software

Progetto di Applicazioni Software

Algoritmi Genetici. Alessandro Bollini

Fondamenti di Informatica - 9Cfu Corso di Laurea in Ingegneria Informatica (ord. 270)

Programma del Corso. Dati e DBMS SQL. Progettazione di una. Normalizzazione

SOFTWARE A SUPPORTO DELLA GESTIONE AMMINISTRATIVA DELLO SPORTELLO UNICO SPECIFICA DEI REQUISITI UTENTE

Транскрипт:

bollini@vision.unipv.it Dipartimento di Informatica e Sistemistica Università di Pavia Via Ferrata, 1 27100 Pavia Programmazione genetica Algoritmo di base mutuato dagli algoritmi genetici Inizializzazione casuale della popolazione Valutazione della fitness Selezione Riproduzione Gli individui sono programmi rappresentati come S-Expression. S-Expression Funzioni Terminali Valori Variabili Binding Valori di contesto Effetti collaterali Valore Operatori genetici Ricombinazione Mutazione 2xy/3 / 2 x y 3 Ricombinazione / 2 x y 3 y x 2 y x x / y 3 1

Integrità strutturale Conoscenza di dominio Gli operatori possono essere applicati solo ad alcuni tipi di dati. Possono verificarsi eccezioni nella valutazione degli operatori. Chiusura funzionale. Operazioni protette. Gestione delle eccezioni. Programmazione strongly-typed tramite operatori estesi. Non tutte le soluzioni possibili nello spazio di ricerca sono egualmente ragionevoli E possibile guidare il processo evolutivo integrando la conoscenza di dominio disponibile Operatori genetici euristici. Operatori grammaticali. Espressività Evolvibilità Le espressioni rappresentano un sottoinsieme piuttosto ristretto della programmazione Costanti. Programmazione strutturata. Funzioni e procedure. Memoria. ERC (Ephemeral Random Constants), ER Data. ADF, ADL, ADS, (Automatically Defined Function, Loop, Storage, ) tramite operatori estesi Le espressioni hanno due ruoli distinti Eseguite come programmi (fenotipo) Modificate tramite operatori genetici (genotipo) Non è detto che un buon programma sia anche una buona base di lavoro per gli operatori genetici Disaccoppiare la rappresentazione del fenotipo da quella del genotipo 2

- espressione replicazione valutazione neutralità Fitness Le soluzioni basate su operatori estesi complicano notevolmente la struttura dell algoritmo di base e sono poco maneggevoli L algoritmo di evoluzione grammaticale offre una soluzione alternativa basata su: Descrizione grammaticale dello spazio delle soluzioni Mappatura neutrale da genotipo a fenotipo Il genotipo è rappresentato da una stringa di bit di lunghezza generalmente fissa. Gli operatori genetici sono ricombinazione (cross-over) e mutazione a punto. 1 0 1 0 1 0 0 1 1 1 1 1 1 0 0 1 0 1 0 0 0 1 0 1 0 1 0 0 1 1 1 0 1 1 0 0 1 0 1 0 0 0 Il fenotipo è un programma in un linguaggio arbitrario descritto tramite una grammatica context-free espressa nell usuale notazione BNF e.g. espressioni aritmetiche S -> E E -> V E -> (EOE) V -> x V -> y O -> O -> - O -> O -> / 3

Mappatura genotipo-fenotipo Trascrizione Genera il programma corrispondente al fenotipo sulla base della grammatica che definisce lo spazio delle possibili soluzioni utilizzando l informazione contenuta nel genotipo per definire l albero di derivazione 1 0 1 0 1 0 0 1 1 1 1 1 1 0 0 1 0 1 0 0 0 5 2 3 7 5 0 Codoni Traduzione Strutture dati e algoritmi Codoni 5 1 2 0 3 3 7 1 0 5 1 0 0 E ( E O E ) ( x O E ) ( x / E ) ( x / ( E O E ) ) ( x / ( x O E ) ) ( x / ( x - E ) ) ( x / ( x - x ) ) E -> x (0) E -> (EOE) (1) O -> (0) O -> - (1) O -> (2) O -> / (3) A livello di genotipo strutture dati e operatori genetici sono condivisi con gli algoritmi genetici Possono essere utilizzati gli stessi strumenti di analisi e tuning Possono essere applicati algoritmi GA avanzati (e.g. messyga)

Spazio di ricerca Flessibilità Il linguaggio in cui è espresso il fenotipo è arbitrario Può contenere tutti i costrutti necessari ad esprimere le soluzioni desiderate L algoritmo di mappatura garantisce che ad ogni genotipo corrisponda un fenotipo sintatticamente corretto La descrizione grammaticale dello spazio delle soluzioni permette di catturare con un unico strumento i vincoli relativi all integrità strutturale e alla conoscenza di dominio. Senza richiedere interventi sugli operatori genetici In modo facilmente comprensibile e intuitivo Neutralità Riferimenti La neutralità introdotta dall algoritmo di mappatura permette di adattare indipendentemente genotipo e fenotipo Il genotipo all azione degli operatori genetici Il fenotipo alla funzione di valutazione della fitness L evolvibilità può essere controllata modificando l algoritmo di trascrizione/traduzione Indipendentemente dall algoritmo genetico di base www.grammatical-evolution.org M. O'Neill, C. Ryan. Under the Hood of Grammatical Evolution. In W. Banzhaf et al. (eds.). GECCO-99: Proceedings of the Genetic and Evolutionary Computation Conference, 1999. Symbolic Regression Tool 5