Ingegneria della Conoscenza e Sistemi Esperti Lezione 9: Evolutionary Computation

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Ingegneria della Conoscenza e Sistemi Esperti Lezione 9: Evolutionary Computation"

Transcript

1 Ingegneria della Conoscenza e Sistemi Esperti Lezione 9: Evolutionary Computation Dipartimento di Elettronica e Informazione Politecnico di Milano Evolutionary Computation Raggruppa modelli di calcolo che si ispirano alla metafora della genetica delle popolazioni alla teoria di Darwin sull evoluzione Fra gli altri ne fanno parte Algoritmi Genetici Strategie Evolutive Genetic Programming (programmazione genetica) 1

2 Caratteristiche Principali Popolazione di individui che evolve nel tempo Meccanismo di selezione che favorisce la sopravvivenza degli individui migliori Meccanismi per lo scambio di patrimonio genetico Meccanismi di mutazione Evoluzione Naturale e Artificiale Evoluzione Naturale Non è diretta Dipende dall ambiente con cui gli indivui vivono Gli individui sono migliori se sopravvivono e si adattano all ambiente Evoluzione Artificiale È diretta e quindi può essere paragonata all allevamento L allevatore decide quali sono gli individui migliori da selezionare Le mutazioni possono essere ancora casuali ma in alcuni casi decise anche dall allevatore 2

3 Algoritmi Evolutivi Simulano l attività di un allevamento Esiste una popolazione finita di individui Mutazioni possono accadere in maniere casuale ma anche indotte La selezione degli elementi migliori avviene secondo un criterio predefinito Quando un individuo è migliore? Nell evoluzione naturale, è la sopravvivenza che determina se e quanto un individuo è migliore di un altro In un allevamento, è l allevatore che decide quali individui sono da preferire Negli algoritmi evolutivi, viene definita una funzione di fitness che associa un punteggio numerico ad ogni individuo Più alto il punteggio, migliore l individuo 3

4 Cosa sono gli Algoritmi Genetici? Sono algoritmi di ottimizzazione inventati da John Holland, intorno al 1975 Vengono utilizzati per trovare il massimo o il minimo di una certa funzione obiettivo Quando e perchè vengono utilizzati? Quando altri metodi noti non sono applicabili Si possono applicare quasi in ogni problema Come l evoluzione naturale, richiedono più tempo di altri metodi È consigliabile utilizzarli solo quando non ci sono altre possibilità Applicazioni al Data Mining: GA-MINER e altri... 4

5 Algoritmi Genetici (Holland 1975) Popolazione È costituita da un insieme di stringhe binarie (gli individui) di lunghezza finita Selezione Viene definita una funzione di fitness che associa ad ogni invividuo un punteggio numerico Ogni individuo ha una probabilità di sopravvivenza proporzionale alla propria fitness Mutazione e Riproduzione Avviene attraverso due operatori, crossover e mutazione, che ricombinano e mutano il patrimonio genetico degli individui Un po di terminologia Evoluzione Naturale Fitness Cromosoma/Individuo Gene Allele Evoluzione Artificiale Funzione di Fitness/Obiettivo Stringa/Soluzione Gene/Parametro/Feature Allele Allele/Valore del Parametro Fitness Cromosoma/Individuo Gene 5

6 Algoritmi Genetici - Algoritmo t : = 0 Inizializza la popolazione iniziale P(t) con N individui generati in maniera casuale RIPETI Calcola la fitness per tutti gli elementi di P(t) Genera Pr(t+1) da P(t) applicando l operatore di RIPRODUZIONE Genera Pc(t+1) da Pr(t+1) applicando l operatore di CROSSOVER Genera Pm(t+1) da Pc(t+1) applicando l operatore di MUTAZIONE a Pc(t+1) P(t+1) := Pm(t+1) t := t+1 FINO alla Condizione di Terminazione Algoritmi Genetici - Selezione Individuo Fitness Prob. di Riproduzione P r (x i ) x 1 Μ x j Μ x n f ( x 1 ) Μ f( x j ) Μ f ( x n ) f ( x 1 ) ( ) f x j ( ) f x n n i=1 n i=1 n i=1 f ( x i ) f ( x i ) f ( x i ) Ogni individuo ha una probabilità di riprodursi proporzionale a P r (x i ) 6

7 Algoritmi Genetici - Selezione Individui Fitness Probabilità f(00100) = 50 Pr(00100) = f(01001) = 25 Pr(01001) = f(00011) = 25 Pr(00011) =.25 Selezione dei discendenti tramite ROULETTE Crossover Vengono scelte (N/2) p c coppie di individui in maniera casuale dalla popolazione. Un punto di taglio viene scelto in maniera casuale all interno degli individui e il crossover è eseguito. 7

8 Mutazione Ogni allele di un individuo è mutato con probabilità P m Problema Esempio - Ottimizzazione di Funzione Si vuole massimizzare la funzione y=x 2 sull intervallo intero [0..31] Passi Scegliere una codifica per gli elementi dello spazio di ricerca Scegliere una funzione di fitness Applicazione dell algoritmo genetico 8

9 Codifica Esempio - Ottimizzazione di Funzione Scegliamo la classica codifica binaria Ci sono 32 valori possibili e quindi sono necessari 5bit Funzione di Fitness La funzione di fitness è la stessa funzione da massimizzare y=x 2 Esempio: f(00100) = 4 2 = 16 Popolazione Iniziale {01101, 11000, 01000, 10011} Esempio - Ottimizzazione di Funzione Selezione N Stringa f(s) % Rispetto al Totale % % % % Totale Fitness: 1170 La roulette viene girata 4 volte e seleziona la nuova popolazione {01101, 11000, 11000, 10011} 9

10 Crossover Esempio - Ottimizzazione di Funzione Supponiamo di avere una Probabilità di Crossover pari a 0.5. P c = 0.5 Vengono scelte casualmente (N/2)* P c coppie di individui cioè (4/2)*.5 = 1 coppia di individui e il punto di crossover La Nuova Popolazione {01100, 11001, 11000, 10011} Mutazione Esempio - Ottimizzazione di Funzione Con una probabilità di mutazione P m =0.01 viene cambiato un il valore di un gene (allele) dell individuo Nuova Popolazione {01100, 11001, 11000, 11011} 10

11 Esempio - Problema del Commesso Viaggiatore Problema Otto città collegate Dobbiamo trovare il percorso minimo che passa per tutte le città Primo Passo: Scelta di una rappresentazione adeguata Stringa binaria? Oppure Esempio - Problema del Commesso Viaggiatore Secondo Passo: Scelta di una funzione di fitness Ad esempio possiamo definire Fitness(percorso) = (lunghezza) -1 Terzo Passo: Definizione degli operatori di crossover e mutazione Crossover standard Crossover Ridefinito 11

12 Esempio - Problema del Commesso Viaggiatore Quarto passo: Scelta di un criterio di stop Fisso il numero di cicli Il processo si ferma quando non ci sono miglioramenti Genetic Programming È l applicazione degli algoritmi genetici al caso in cui gli individui sono programmi La fitness viene valutata eseguendo il programma Pone notevoli quesiti Quale paradigmi di programmazione? Quale linguaggio? Quale sottoinsieme di istruzioni? E problemi Terminazione? 12

13 Rappresentazione degli Individui Tradizionalmente la Genetic Programming rappresenta gli individui tramite s-espressioni LISP Vengono selezionati un insieme di simboli terminali T e di simboli di funzione F Ad esempio T={X, Z, 0.234, 0.789} F={+, -, *} Regressione Simbolica Problema Dato un insieme di coppie <x 1,y 1 > <x n,y n > trovare una funzione che meglio approssima i punti della funzione Primo Passo: Scelta dei terminali e delle funzioni Terminali T={X} Funzioni F={+, -, *, /, sin, exp, cos, log} Secondo Passo: Scelta della fitness Errore quadratico fra gli y i e i valori approssimati dall individuo Terzo Passo: Definizione degli operatori di crossover e mutazione 13

14 Regressione Simbolica - Crossover Regressione Simbolica - Mutazione La mutazione viene solitamente implementata con un crossover fra l individuo ed un individuo generato in maniera casuale 14

15 Regressione Simbolica - Esempio di Soluzione Supponiamo che i dati vengano generati dalla funzione x 4 + x 3 + x 2 + x Una possibile soluzione è data dall individuo qui rappresentato 15

Page 1. Evoluzione. Intelligenza Artificiale. Algoritmi Genetici. Evoluzione. Evoluzione: nomenclatura. Corrispondenze natura-calcolo

Page 1. Evoluzione. Intelligenza Artificiale. Algoritmi Genetici. Evoluzione. Evoluzione: nomenclatura. Corrispondenze natura-calcolo Evoluzione In ogni popolazione si verificano delle mutazioni. Intelligenza Artificiale In un ambiente che varia, le mutazioni possono generare individui che meglio si adattano alle nuove condizioni. Questi

Dettagli

Introduzione agli algoritmi genetici. Diego Nova

Introduzione agli algoritmi genetici. Diego Nova Introduzione agli algoritmi genetici Diego Nova Introduzione Gli Algoritmi Genetici (GA) sono procedure complesse, adattative, finalizzate alla risoluzione di problemi di ricerca e ottimizzazione e basate

Dettagli

Breve introduzione al Calcolo Evoluzionistico

Breve introduzione al Calcolo Evoluzionistico Breve introduzione al Calcolo Evoluzionistico Stefano Cagnoni Dipartimento di Ingegneria dell Informazione, Università di Parma cagnoni@ce.unipr.it 1 Introduzione Il mondo fisico ed i fenomeni naturali

Dettagli

Introduzione agli Algoritmi Genetici Prof. Beatrice Lazzerini

Introduzione agli Algoritmi Genetici Prof. Beatrice Lazzerini Introduzione agli Algoritmi Genetici Prof. Beatrice Lazzerini Dipartimento di Ingegneria della Informazione Via Diotisalvi, 2 56122 PISA ALGORITMI GENETICI (GA) Sono usati per risolvere problemi di ricerca

Dettagli

Evoluzione Grammaticale

Evoluzione Grammaticale 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

Dettagli

Introduzione agli Algoritmi Genetici Prof. Beatrice Lazzerini

Introduzione agli Algoritmi Genetici Prof. Beatrice Lazzerini Introduzione agli Algoritmi Genetici Prof. Beatrice Lazzerini Dipartimento di Ingegneria della Informazione Via Diotisalvi, 2 56122 PISA ALGORITMI GENETICI (GA) Sono usati per risolvere problemi di ricerca

Dettagli

Reti Neurali in Generale

Reti Neurali in Generale istemi di Elaborazione dell Informazione 76 Reti Neurali in Generale Le Reti Neurali Artificiali sono studiate sotto molti punti di vista. In particolare, contributi alla ricerca in questo campo provengono

Dettagli

David Sadava, H. Craig Heller, Gordon H. Orians, William K. Purves, David M. Hillis. Biologia.blu B - Le basi molecolari della vita e dell evoluzione

David Sadava, H. Craig Heller, Gordon H. Orians, William K. Purves, David M. Hillis. Biologia.blu B - Le basi molecolari della vita e dell evoluzione David Sadava, H. Craig Heller, Gordon H. Orians, William K. Purves, David M. Hillis Biologia.blu B - Le basi molecolari della vita e dell evoluzione 1 L evoluzione e i suoi meccanismi 2 Il viaggio di Charles

Dettagli

Definizioni. Soluzione ottima: migliore soluzione possibile Soluzione ottima localmente: soluzione ottima in un dominio contiguo. Il paradigma greedy

Definizioni. Soluzione ottima: migliore soluzione possibile Soluzione ottima localmente: soluzione ottima in un dominio contiguo. Il paradigma greedy Il paradigma greedy Paolo Camurati, Fulvio Corno, Matteo Sonza Reorda Dip. Automatica e Informatica Politecnico di Torino Definizioni Soluzione ottima: migliore soluzione possibile Soluzione ottima localmente:

Dettagli

La codifica digitale

La codifica digitale La codifica digitale Codifica digitale Il computer e il sistema binario Il computer elabora esclusivamente numeri. Ogni immagine, ogni suono, ogni informazione per essere compresa e rielaborata dal calcolatore

Dettagli

In molte applicazioni sorge il problema di sapere in quanti modi possibili si può presentare un certo fenomeno.

In molte applicazioni sorge il problema di sapere in quanti modi possibili si può presentare un certo fenomeno. Definizione Oggetto del calcolo combinatorio è quello di determinare il numero dei modi mediante i quali possono essere associati, secondo prefissate regole, gli elementi di uno stesso insieme o di più

Dettagli

Cercare il percorso minimo Ant Colony Optimization

Cercare il percorso minimo Ant Colony Optimization Cercare il percorso minimo Ant Colony Optimization Author: Luca Albergante 1 Dipartimento di Matematica, Università degli Studi di Milano 4 Aprile 2011 L. Albergante (Univ. of Milan) PSO 4 Aprile 2011

Dettagli

Il problema La scelta della rappresentazione: il piano cartesiano, i vettori e le traslazioni

Il problema La scelta della rappresentazione: il piano cartesiano, i vettori e le traslazioni Il problema In una città progettata da un architetto razionalista, le case sono disposte a scacchiera, separate da vie che si incrociano perpendicolarmente. Il proprietario di una di queste case vuole

Dettagli

Computazione Naturale AA. 2011-2012

Computazione Naturale AA. 2011-2012 Computazione Naturale AA. 2011-2012 Prof. Mario Pavone CdL Magistrale in Informatica Dip. Matematica ed Informatica mpavone@dmi.unict.it http://www.dmi.unict.it/mpavone/ INDICE Obiettivi formativi Cos

Dettagli

Algoritmi Genetici. e programmazione genetica

Algoritmi Genetici. e programmazione genetica Algoritmi Genetici e programmazione genetica Algoritmi Genetici Algoritmi motivati dall analogia con l evoluzione biologica Lamarck: le specie trasmutano nel tempo Darwin e Wallace: variazioni consistenti

Dettagli

LINGUAGGI DI PROGRAMMAZIONE E CODIFICA PROGRAMMI

LINGUAGGI DI PROGRAMMAZIONE E CODIFICA PROGRAMMI LINGUAGGI DI PROGRAMMAZIONE E CODIFICA PROGRAMMI Giacomo Piscitelli pag. 1/10 Dall Algoritmo al Programma Metodo risolutivo problema algoritmo Linguaggio programma Individuazione di un metodo risolutivo

Dettagli

AXO - Architettura dei Calcolatori e Sistema Operativo. organizzazione strutturata dei calcolatori

AXO - Architettura dei Calcolatori e Sistema Operativo. organizzazione strutturata dei calcolatori AXO - Architettura dei Calcolatori e Sistema Operativo organizzazione strutturata dei calcolatori I livelli I calcolatori sono progettati come una serie di livelli ognuno dei quali si basa sui livelli

Dettagli

Schemi delle Lezioni di Matematica Generale. Pierpaolo Montana

Schemi delle Lezioni di Matematica Generale. Pierpaolo Montana Schemi delle Lezioni di Matematica Generale Pierpaolo Montana Una funzione (numerica) é una applicazione definita su un insieme numerico a valori in un insieme numerico. Ovvero, la differenza tra il termine

Dettagli

Intelligenza Artificiale Ing. Tiziano Papini

Intelligenza Artificiale Ing. Tiziano Papini Intelligenza Artificiale Ing. Tiziano Papini Email: papinit@dii.unisi.it Web: http://www.dii.unisi.it/~papinit Constraint Satisfaction metodi riparativi Intelligenza Artificiale - CSP Tiziano Papini -

Dettagli

Il metodo di Gauss-Newton per le regressioni non-lineari

Il metodo di Gauss-Newton per le regressioni non-lineari Il metodo di Gauss-Newton per le regressioni non-lineari Andrea Onofri Dipartimento di Scienze Agrarie ed Ambientali Università degli Studi di Perugia Versione on-line: http://www.unipg.it/ onofri/rtutorial/index.html

Dettagli

Corso di BIOINFORMATICA Applicazioni BIO-Mediche

Corso di BIOINFORMATICA Applicazioni BIO-Mediche Corso di BIOINFORMATICA Applicazioni BIO-Mediche - Introduzione al Molecular Docking (algoritmi di ricerca e Moderni software) Pietro BUFFA Responsabile Unità Operativa di Bioinformatica Dipartimento di

Dettagli

TECNICHE DI CALIBRAZIONE DEI MODELLI

TECNICHE DI CALIBRAZIONE DEI MODELLI TECICHE DI CALIBRAZIOE DEI MODELLI Calibrare un modello significa semplicemente sistemare un modello matematico o altro in maniera tale da ottenere un risultato simile a quello da noi desiderato. Qualsiasi

Dettagli

Riproduzione Crossover Mutazione

Riproduzione Crossover Mutazione Algoritmi Genetici Sono algoritmi di ricerca basati sui principi evolutivi della selezione naturale e della genetica, che implicano la sopravvivenza degli elementi migliori e lo scambio di informazioni

Dettagli

Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012

Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012 Fondamenti di Informatica - 1 Prof. B.Buttarazzi A.A. 2011/2012 Sommario Rappresentazione dei numeri naturali (N) Rappresentazione dei numeri interi (Z) Modulo e segno In complemento a 2 Operazioni aritmetiche

Dettagli

Rappresentazione di numeri interi

Rappresentazione di numeri interi Corso di Calcolatori Elettronici I Esercizi Rappresentazione di numeri interi ing. Alessandro Cilardo Corso di Laurea in Ingegneria Biomedica Interi senza segno Qual è l intervallo di rappresentazione

Dettagli

Codifica di informazioni numeriche

Codifica di informazioni numeriche Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Codifica di informazioni numeriche Fondamenti di Informatica - Ingegneria Elettronica Leonardo Querzoni querzoni@dis.uniroma1.it

Dettagli

UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 17 giugno 2013

UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 17 giugno 2013 A UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa Seconda prova intermedia 7 giugno 0 Nome: Cognome: Matricola: Orale /06/0 ore aula N Orale 0/07/0 ore aula N

Dettagli

Argomenti trattati. Informazione Codifica Tipo di un dato Rappresentazione dei numeri Rappresentazione dei caratteri e di altre informazioni

Argomenti trattati. Informazione Codifica Tipo di un dato Rappresentazione dei numeri Rappresentazione dei caratteri e di altre informazioni Argomenti trattati Informazione Codifica Tipo di un dato Rappresentazione dei numeri Rappresentazione dei caratteri e di altre informazioni Informazione mi dai il numero di Andrea? 0817651831 Il numero

Dettagli

Il concetto di informatica. Graziano Pravadelli (2012)

Il concetto di informatica. Graziano Pravadelli (2012) Il concetto di informatica Graziano Pravadelli (2012) Informatica e telecomunicazione Cos è l informatica? lo studio sistematico degli algoritmi che descrivono e trasformano l informazione: la loro teoria,

Dettagli

Appunti di informatica. Lezione 10 anno accademico Mario Verdicchio

Appunti di informatica. Lezione 10 anno accademico Mario Verdicchio Appunti di informatica Lezione 10 anno accademico 2016-2017 Mario Verdicchio Esercizio Scrivere un programma che, data una sequenza di 10 interi (scelta dall utente), la ordini in ordine crescente Soluzione

Dettagli

Informazione e sua rappresentazione: codifica

Informazione e sua rappresentazione: codifica Corso di Calcolatori Elettronici I A.A. 2011-2012 Informazione e sua rappresentazione: codifica Lezione 2 Prof. Antonio Pescapè Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso

Dettagli

GENETICA QUANTITATIVA

GENETICA QUANTITATIVA GENETICA QUANTITATIVA Caratteri quantitativi e qualitativi I caratteri discontinui o qualitativi esibiscono un numero ridotto di fenotipi e mostrano una relazione genotipo-fenotipo semplice I caratteri

Dettagli

Cap. 2 - Rappresentazione in base 2 dei numeri interi

Cap. 2 - Rappresentazione in base 2 dei numeri interi Cap. 2 - Rappresentazione in base 2 dei numeri interi 2.1 I NUMERI INTERI RELATIVI I numeri relativi sono numeri con il segno: essi possono essere quindi positivi e negativi. Si dividono in due categorie:

Dettagli

PROBLEMI ALGORITMI E PROGRAMMAZIONE

PROBLEMI ALGORITMI E PROGRAMMAZIONE PROBLEMI ALGORITMI E PROGRAMMAZIONE SCIENZE E TECNOLOGIE APPLICATE CLASSE SECONDA D PROGRAMMARE = SPECIFICARE UN PROCEDIMENTO CAPACE DI FAR SVOLGERE AD UNA MACCHINA UNA SERIE ORDINATA DI OPERAZIONI AL

Dettagli

Sintesi di Reti Sequenziali Sincrone

Sintesi di Reti Sequenziali Sincrone Sintesi di Reti Sequenziali Sincrone Maurizio Palesi Maurizio Palesi 1 Macchina Sequenziale Una macchina sequenziale è definita dalla quintupla (I,U,S,δ,λ ) dove: I è l insieme finito dei simboli d ingresso

Dettagli

DESCRIZIONE. del brevetto per invenzione industriale dal titolo: METODO PER ASSOCIARE UNA IMMAGINE A UNA SEQUENZA DI

DESCRIZIONE. del brevetto per invenzione industriale dal titolo: METODO PER ASSOCIARE UNA IMMAGINE A UNA SEQUENZA DI DESCRIZIONE del brevetto per invenzione industriale dal titolo: METODO PER ASSOCIARE UNA IMMAGINE A UNA SEQUENZA DI PRESSIONI DI TASTI INSERITA TRAMITE UNA TASTIERA 1) ANGUSTI GIULIO di nazionalità italiana

Dettagli

Corso di Applicazioni di Intelligenza Artificiale LS. Prof. Paola Mello Anno accademico 2008/2009

Corso di Applicazioni di Intelligenza Artificiale LS. Prof. Paola Mello Anno accademico 2008/2009 Università degli Studi di Bologna Facoltà di Ingegneria Corso di Applicazioni di Intelligenza Artificiale LS Corso di Laurea in Ingegneria Informatica Prof. Paola Mello Anno accademico 2008/2009 CONTENUTI

Dettagli

Corso di Modelli Matematici in Biologia Esame del 6 Luglio 2016

Corso di Modelli Matematici in Biologia Esame del 6 Luglio 2016 Corso di Modelli Matematici in Biologia Esame del 6 Luglio 206 Scrivere chiaramente in testa all elaborato: Nome, Cognome, numero di matricola. Risolvere tutti gli esercizi. Tempo a disposizione: DUE ORE.

Dettagli

Dispensa di Informatica II.1

Dispensa di Informatica II.1 ALGORITMI La dispensa di seguito proposta si pone come tutorial per poter porre le basi per la realizzazione di algoritmi che poi potranno eventualmente essere sviluppati in moduli software con metodologia

Dettagli

Capitolo 6. La distribuzione normale

Capitolo 6. La distribuzione normale Levine, Krehbiel, Berenson Statistica II ed. 2006 Apogeo Capitolo 6 La distribuzione normale Insegnamento: Statistica Corso di Laurea Triennale in Ingegneria Gestionale Facoltà di Ingegneria, Università

Dettagli

Controlli Automatici I

Controlli Automatici I Ingegneria Elettrica Politecnico di Torino Luca Carlone Controlli Automatici I LEZIONE V Sommario LEZIONE V Proprietà strutturali Controllabilità e raggiungibilità Raggiungibilità nei sistemi lineari Forma

Dettagli

Parole note, nuovi significati: linguaggio, determinismo e infinito

Parole note, nuovi significati: linguaggio, determinismo e infinito Parole note, nuovi significati: linguaggio, determinismo e infinito Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Ciclo di seminari su un Vocabolario Filosofico

Dettagli

Caratteristiche di un linguaggio ad alto livello

Caratteristiche di un linguaggio ad alto livello Caratteristiche di un linguaggio ad alto livello Un linguaggio ad alto livello deve offrire degli strumenti per: rappresentare le informazioni di interesse dell algoritmo definire le istruzioni che costituiscono

Dettagli

I.4 Rappresentazione dell informazione

I.4 Rappresentazione dell informazione I.4 Rappresentazione dell informazione Università di Ferrara Dipartimento di Economia e Management Insegnamento di Informatica Ottobre 13, 2015 Argomenti Introduzione 1 Introduzione 2 3 L elaboratore Introduzione

Dettagli

Versione di Controllo

Versione di Controllo Università degli Studi di Trento test di ammissione ai corsi di laurea in Fisica - Matematica - Informatica Ingegneria dell Informazione e Organizzazione d Impresa Ingegneria dell Informazione e delle

Dettagli

DISTRIBUZIONI DI PROBABILITA

DISTRIBUZIONI DI PROBABILITA DISTRIBUZIONI DI PROBABILITA Nell associare ai risultati di un esperimento un valore numerico si costruisce una variabile casuale (o aleatoria, o stocastica). Ogni variabile casuale ha una corrispondente

Dettagli

ANALISI DI SERIE TEMPORALI CAOTICHE (1)

ANALISI DI SERIE TEMPORALI CAOTICHE (1) ANALISI DI SERIE TEMPORALI CAOTICHE (1) Problematiche Ricostruzione dello stato Dimensione di embedding C. Piccardi e F. Dercole Politecnico di Milano ver. 28/12/2009 1/15 Per studiare e comprendere appieno

Dettagli

La codifica. dell informazione

La codifica. dell informazione La codifica dell informazione (continua) Codifica dei numeri Il codice ASCII consente di codificare le cifre decimali da 0 a 9 fornendo in questo modo un metodo per la rappresentazione dei numeri Il numero

Dettagli

Dalla prima lezione. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 7 VARIABILI E COSTANTI 28/02/2016. Concetto di algoritmo

Dalla prima lezione. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 7 VARIABILI E COSTANTI 28/02/2016. Concetto di algoritmo LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 7 VARIABILI E COSTANTI Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna

Dettagli

TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE

TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE Riccardo Dondi Dipartimento di Scienze dei linguaggi, della comunicazione e degli studi culturali Università degli Studi di Bergamo Informazione sul corso

Dettagli

QUANTIZZAZIONE E CONVERSIONE IN FORMA NUMERICA. 1 Fondamenti Segnali e Trasmissione

QUANTIZZAZIONE E CONVERSIONE IN FORMA NUMERICA. 1 Fondamenti Segnali e Trasmissione UANTIZZAZIONE E CONVERSIONE IN FORMA NUMERICA Fondamenti Segnali e Trasmissione Campionamento e quantizzazione di un segnale analogico Si consideri il segnale x(t) campionato con passo T c. Campioni del

Dettagli

Somma di numeri binari

Somma di numeri binari Fondamenti di Informatica: Codifica Binaria dell Informazione 1 Somma di numeri binari 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 10 Esempio: 10011011 + 00101011 = 11000110 in base e una base Fondamenti di

Dettagli

Corso di Matematica per la Chimica

Corso di Matematica per la Chimica Dott.ssa Maria Carmela De Bonis a.a. 2013-14 Il best fitting In molte applicazioni accade di avere una certa quantità di dati (solitamente elevata) e di voler descrivere l andamento del fenomeno che ha

Dettagli

Programmazione Dipartimento Area Scientifica T. Rossi A.S. 2015/2016

Programmazione Dipartimento Area Scientifica T. Rossi A.S. 2015/2016 Programmazione Dipartimento Area Scientifica T. Rossi A.S. 2015/2016 INDIRIZZO ISTITUTO TECNICO DISCIPLINA MATEMATICA- Competenze Abilità Conoscenze Utilizzare il linguaggio e i metodi propri della matematica

Dettagli

Cosa è l Informatica?

Cosa è l Informatica? Cosa è l Informatica? Scienza degli elaboratori elettronici (Computer Science) Scienza dell informazione Scienza della rappresentazione, memorizzazione, elaborazione e trasmissione dell informazione Elaboratore

Dettagli

Problemi, istanze, soluzioni

Problemi, istanze, soluzioni lgoritmi e Strutture di Dati II 2 Problemi, istanze, soluzioni Un problema specifica una relazione matematica tra dati di ingresso e dati di uscita. Una istanza di un problema è formata dai dati di un

Dettagli

Codice binario. Codice. Codifica - numeri naturali. Codifica - numeri naturali. Alfabeto binario: costituito da due simboli

Codice binario. Codice. Codifica - numeri naturali. Codifica - numeri naturali. Alfabeto binario: costituito da due simboli Codice La relazione che associa ad ogni successione ben formata di simboli di un alfabeto il dato corrispondente è detta codice. Un codice mette quindi in relazione le successioni di simboli con il significato

Dettagli

Corso di Calcolo Numerico

Corso di Calcolo Numerico Prof. L. Brandolini Corso di Calcolo Numerico Dott.ssa N. Franchina Laboratorio 5 Equazioni differenziali ordinarie: metodi espliciti 25 Novembre 215 Esercizi di implementazione Un equazione differenziale

Dettagli

Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura

Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE Francesco Tura francesco.tura@unibo.it 1 Lo strumento dell informatico: ELABORATORE ELETTRONICO [= calcolatore = computer] Macchina multifunzionale Macchina

Dettagli

Esercizi proposti 10

Esercizi proposti 10 Esercizi proposti 10 In questo gruppo di esercizi assumiamo, dove non sia specificato diversamente, di rappresentare i grafi mediante liste di archi, con il tipo di dati così dichiarato: type a graph =

Dettagli

9) Il componente fondamentale per la comunicazione tra le componenti di un computer di chiama a) Web b) Bus c) Internet

9) Il componente fondamentale per la comunicazione tra le componenti di un computer di chiama a) Web b) Bus c) Internet Informatica per la Comunicazione/ Verdicchio/ 26/01/2017/ Domande / VERSIONE 1 1) Lo stato iniziale di una Macchina di Turing è per convenzione a) begin b) start c) q 1 2) In un diagramma di flusso in

Dettagli

La funzione Hash. Garanzia dell integrità dei dati e autenticazione dei messaggi

La funzione Hash. Garanzia dell integrità dei dati e autenticazione dei messaggi La funzione Hash Garanzia dell integrità dei dati e autenticazione dei messaggi Come funziona l Hash function Associa stringhe di bit di lunghezza arbitraria e finita stringhe di bit di lunghezza inferiore.

Dettagli

LA PROGRAMMAZIONE MATEMATICA (p.m.)

LA PROGRAMMAZIONE MATEMATICA (p.m.) LA PROGRAMMAZIONE MATEMATICA (p.m.) Un problema di programmazione matematica è un problema di ottimizzazione riconducibile alla seguente espressione generale: ricercare i valori delle variabili x 1, x

Dettagli

Pag. 1. La Rappresentazione e la Codifica delle informazioni (parte 2) Tipi di dati. Informatica Facoltà di Medicina Veterinaria

Pag. 1. La Rappresentazione e la Codifica delle informazioni (parte 2) Tipi di dati. Informatica Facoltà di Medicina Veterinaria 1 Università degli studi di Parma Dipartimento di Ingegneria dell Informazione Informatica a.a. 2012/13 Tipi di dati Informatica Facoltà di Medicina Veterinaria La Rappresentazione e la Codifica delle

Dettagli

Sintesi di Reti sequenziali Sincrone

Sintesi di Reti sequenziali Sincrone Sintesi di Reti sequenziali Sincrone alcolatori ElettroniciIngegneria Telematica Sintesi di Reti Sequenziali Sincrone na macchina sequenziale è definita dalla quintupla δ, λ) dove: I è l insieme finito

Dettagli

Intelligenza Artificiale. Introduzione al calcolo evolutivo

Intelligenza Artificiale. Introduzione al calcolo evolutivo Intelligenza Artificiale Introduzione al calcolo evolutivo Marco Piastra Calcolo evolutivo - 1 Calcolo evolutivo ed IA Universe Borg Vogons Earth etc Biotop Society Stones & Seas etc Art Science Politics

Dettagli

Teoria e metodologia del movimento umano. (Prof.ssa E. Bilotta) A.A. 2013/2014

Teoria e metodologia del movimento umano. (Prof.ssa E. Bilotta) A.A. 2013/2014 Teoria e metodologia del movimento umano (Prof.ssa E. Bilotta) A.A. 2013/2014 Alessandra Oliverio matricola 143440 Report Indirizzo Primaria) Ipotesi di lavoro 1. La funzione di fitness varia in base al

Dettagli

Laboratorio di Informatica. Esercitazione su algoritmi e diagrammi di flusso

Laboratorio di Informatica. Esercitazione su algoritmi e diagrammi di flusso Laboratorio di Informatica Esercitazione su algoritmi e diagrammi di flusso Algoritmi, programmi e dati Algoritmo = insieme di istruzioni che indicano come svolgere operazioni complesse su dei dati attraverso

Dettagli

Codifica binaria dell informazione

Codifica binaria dell informazione Codifica binaria dell informazione Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 13 Agosto 2014 Un obiettivo per domarli tutti 2 Obiettivi Rappresentazione dell informazione Da

Dettagli

Cercare il minimo di una funzione: Particle swam optimization

Cercare il minimo di una funzione: Particle swam optimization di una funzione: Particle swam optimization Author: Luca Albergante 1 Dipartimento di Matematica, Università degli Studi di Milano 28 Marzo 2011 L. Albergante (Univ. of Milan) PSO 28 Marzo 2011 1 / 14

Dettagli

Rappresentazione numeri relativi e reali

Rappresentazione numeri relativi e reali Rappresentazione numeri relativi e reali Lezione 2 Rappresentazione numeri relativi Rappresentazione numeri reali Rappresentazione in Modulo e Segno Rappresentare separatamente il segno (mediante un bit

Dettagli

Algoritmi e loro proprietà. Che cos è un algoritmo? Un esempio di algoritmo

Algoritmi e loro proprietà. Che cos è un algoritmo? Un esempio di algoritmo 1 Cos è l informatica? L informatica è la scienza della rappresentazione e dell elaborazione dell informazione Algoritmi e loro proprietà Proprietà formali degli Algoritmi Efficienza rispetto al tempo

Dettagli

Rappresentazione dei dati in memoria

Rappresentazione dei dati in memoria Rappresentazione dei dati in memoria La memoria Una memoria deve essere un insieme di oggetti a più stati. Questi oggetti devono essere tali che: le dimensioni siano limitate il tempo necessario per registrare

Dettagli

Costruzione di espressioni regolari 4

Costruzione di espressioni regolari 4 ostruzione di espressioni regolari 4 Indicando con d uno dei possibili digits {,, 2,,9} --possiamo esprimere il sotto linguaggio dei digits come d = ( + + 2 +.. + 9) Quale linguaggio produce l espressione:

Dettagli

DISTRIBUZIONI DI PROBABILITA

DISTRIBUZIONI DI PROBABILITA DISTRIBUZIONI DI PROBABILITA La distribuzione di probabilità e un modello matematico, uno schema di riferimento, che ha caratteristiche note e che può essere utilizzato per rispondere a delle domande derivate

Dettagli

Concetti di Base sulla Programmazione. Prof.Ing.S.Cavalieri

Concetti di Base sulla Programmazione. Prof.Ing.S.Cavalieri Concetti di Base sulla Programmazione Prof.Ing.S.Cavalieri 1 La Programmazione Dato un problema INFORMATICO, programmare significa: Definire i dati in ingresso e il risultato che si vuole raggiungere Definire

Dettagli

La Rappresentazione dell Informazione

La Rappresentazione dell Informazione La Rappresentazione dell Informazione Parte III I codici Codici a.a. 27-28 Un codice è una funzione che associa ad una sequenza di simboli un significato Codice : {entità} {sequenze di simboli} Un codice

Dettagli

Soluzioni degli esercizi di formulazione di PL{0, 1}

Soluzioni degli esercizi di formulazione di PL{0, 1} Soluzioni degli esercizi di formulazione di PL{0, 1} Salvatore Nocella 12 febbraio 2007 1 Al lavoro Due operai devono eseguire un certo numero di lavori J = {1,..., n}, ciascuno della durata di un ora.

Dettagli

Firmware Division & Floating pointer adder

Firmware Division & Floating pointer adder Firmware Division & Floating pointer adder Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@di.unimi.it Università degli Studi di Milano Riferimenti sul Patterson: 3.4, 3.5 1/47

Dettagli

Rappresentazione di Numeri Reali. Rappresentazione in virgola fissa (fixed-point) Rappresentazione in virgola fissa (fixed-point)

Rappresentazione di Numeri Reali. Rappresentazione in virgola fissa (fixed-point) Rappresentazione in virgola fissa (fixed-point) Rappresentazione di Numeri Reali Un numero reale è una grandezza continua Può assumere infiniti valori In una rappresentazione di lunghezza limitata, deve di solito essere approssimato. Esistono due forme

Dettagli

3. Indicare cosa sta a significare la figura geometrica del rombo in un diagramma a blocchi

3. Indicare cosa sta a significare la figura geometrica del rombo in un diagramma a blocchi 0.1.1.1 Definire un algoritmo 1. Con il termine algoritmo si intende: a) il software utilizzato in un calcolatore b) l elenco finito di istruzioni necessario per risolvere un problema c) un elaboratore

Dettagli

Esercizi di Matematica per la prova di ammissione alla Scuola Galileiana /16

Esercizi di Matematica per la prova di ammissione alla Scuola Galileiana /16 Esercizi di Matematica per la prova di ammissione alla Scuola Galileiana - 015/16 Esercizio 1 Per quali valori n Z \ {0} l espressione è un numero intero positivo? (n + 5)(n + 6) 6n Soluzione. Il problema

Dettagli

1 Esercizi in pseudocodice

1 Esercizi in pseudocodice Questa dispensa propone esercizi sulla scrittura di algoritmi in un linguaggio semiformale, utile all acquisizione delle abilità essenziali per implementare algoritmi in qualsiasi linguaggio di programmazione.

Dettagli

Access. P a r t e t e r z a

Access. P a r t e t e r z a Access P a r t e t e r z a 1 Query: Concetti generali (2) Query 1 Tabella Query 2 Le query rappresentano viste differenti sul DB (possono coinvolgere una o più tabelle) 2 Creazione (1) Diverse possibilità,

Dettagli

Rappresentazione dei numeri reali in un calcolatore

Rappresentazione dei numeri reali in un calcolatore Corso di Calcolatori Elettronici I A.A. 2010-2011 Rappresentazione dei numeri reali in un calcolatore Lezione 3 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Rappresentazione di numeri

Dettagli

POPOLAZIONE. Gruppo di individui della stessa specie che occupa una particolare area geografica nella quale essi possono accoppiarsi liberamente

POPOLAZIONE. Gruppo di individui della stessa specie che occupa una particolare area geografica nella quale essi possono accoppiarsi liberamente POPOLAZIONE Gruppo di individui della stessa specie che occupa una particolare area geografica nella quale essi possono accoppiarsi liberamente E l'unità di base del cambiamento evolutivo, perché permette

Dettagli

Rappresentazione digitale del suono

Rappresentazione digitale del suono Rappresentazione digitale del suono Perché rappresentazione del suono Trasmettere a distanza nel tempo e nello spazio un suono Registrazione e riproduzione per tutti Elaborazione del segnale audio per

Dettagli

Come ragiona il computer. Problemi e algoritmi

Come ragiona il computer. Problemi e algoritmi Come ragiona il computer Problemi e algoritmi Il problema Abbiamo un problema quando ci poniamo un obiettivo da raggiungere e per raggiungerlo dobbiamo mettere a punto una strategia Per risolvere il problema

Dettagli

Corso di BASCOM (Capitolo 8 ) Corso Teorico/Pratico di programmazione in BASCOM Autore: DAMINO Salvatore. Codice Morse. (2).

Corso di BASCOM (Capitolo 8 ) Corso Teorico/Pratico di programmazione in BASCOM Autore: DAMINO Salvatore. Codice Morse. (2). Corso di BASCOM 8051 - (Capitolo 8 ) Corso Teorico/Pratico di programmazione in BASCOM 8051. Autore: DAMINO Salvatore. Codice Morse. (2). Dopo avere studiato l'esempio.013, con cui abbiamo imparato a generare

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dei numeri relativi

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dei numeri relativi Codice BCD Prima di passare alla rappresentazione dei numeri relativi in binario vediamo un tipo di codifica che ha una certa rilevanza in alcune applicazioni: il codice BCD (Binary Coded Decimal). È un

Dettagli

Modulo 1. Concetti base della Tecnologia dell informazione. Prof. Nicolello Cristiano. Modulo 1

Modulo 1. Concetti base della Tecnologia dell informazione. Prof. Nicolello Cristiano. Modulo 1 Concetti base della Tecnologia dell informazione Algoritmi Come interpreta un computer un problema? Algoritmi Algoritmo: sequenza ordinata di istruzioni per risolvere un problema (tradotto: sequenza di

Dettagli

Il campionamento e l inferenza. Il campionamento e l inferenza

Il campionamento e l inferenza. Il campionamento e l inferenza Il campionamento e l inferenza Popolazione Campione Dai dati osservati mediante scelta campionaria si giunge ad affermazioni che riguardano la popolazione da cui essi sono stati prescelti Il campionamento

Dettagli

Calcolo combinatorio

Calcolo combinatorio Probabilità e Statistica Esercitazioni a.a. 2009/2010 C.d.L.: Ingegneria Elettronica e delle Telecomunicazioni, Ingegneria Informatica Calcolo combinatorio Ines Campa Probabilità e Statistica - Esercitazioni

Dettagli

Insiemi Specifiche, rappresentazione e confronto tra realizzazioni alternative.

Insiemi Specifiche, rappresentazione e confronto tra realizzazioni alternative. Insiemi Specifiche, rappresentazione e confronto tra realizzazioni alternative. Algoritmi e Strutture Dati + Lab A.A. 14/15 Informatica Università degli Studi di Bari Aldo Moro Nicola Di Mauro Definizione

Dettagli

Università degli Studi della Calabria

Università degli Studi della Calabria Università degli Studi della Calabria Dottorato di Ricerca in Psicologia della Programmazione e Intelligenza Artificiale XV Ciclo Tesi di Dottorato Automi Cellulari nella modellizzazione di fenomeni complessi

Dettagli

Sommario. Tabelle ad indirizzamento diretto e hash Funzioni Hash

Sommario. Tabelle ad indirizzamento diretto e hash Funzioni Hash Funzioni Hash Sommario Tabelle ad indirizzamento diretto e hash Funzioni Hash Requisiti Metodo della divisione Metodo della moltiplicazione Funzione Hash Universale La ricerca Talvolta si richiede che

Dettagli

Rappresentazioni numeriche

Rappresentazioni numeriche Rappresentazioni numeriche Un numero è dotato di un valore una rappresentazione La rappresentazione di un numero è il sistema che utilizziamo per indicarne il valore. Normalmente è una sequenza (stringa)

Dettagli

Introduzione al Calcolo Scientifico

Introduzione al Calcolo Scientifico Introduzione al Calcolo Scientifico Francesca Mazzia Dipartimento di Matematica Università di Bari Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 1 / 14 Calcolo Scientifico Insieme degli

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Introduzione al Corso Maria Rita Di Berardini (Camerino), Emanuela Merelli (Ascoli) 1 1 Scuola di Scienze e Tecnologie - Sezione di Informatica Università di Camerino Parte I Il concetto di Algoritmo Il

Dettagli

Casa dello Studente. Casa dello Studente

Casa dello Studente. Casa dello Studente Esercitazione - 14 aprile 2016 ESERCIZIO 1 Di seguito si riporta il giudizio (punteggio da 0 a 5) espresso da un gruppo di studenti rispetto alle diverse residenze studentesche di un Ateneo: a) Si calcolino

Dettagli