Alberi di decisione: c4.5

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Alberi di decisione: c4.5"

Transcript

1 Alberi di decisione: c4.5 c4.5 [Qui93b,Qui96] Evoluzione di ID3, altro sistema del medesimo autore, J.R. Quinlan Ispirato ad uno dei primi sistemi di questo genere, CLS (Concept Learning Systems) di E.B. Hunt Continuo studio ed aggiornamento (release 8): rimane uno dei punti di riferimento nella propria classe di algoritmi. Algoritmo scritto in C per Unix: disponibile da Tutorial su c4.5: courses/831/notes/ml/dtrees/c4.5/tutorial.html 1 Algoritmo di determinazione dell albero T: insieme degli esempi; {C 1,C 2,,C k }: insieme delle classi; Considera l insieme T: T contiene uno o più esempi, tutti appartenenti alla medesima classe => singola foglia con etichetta la classe T non contiene nessun esempio (insieme vuoto)=> singola foglia con etichetta la classe piu frequente nell insieme padre T contiene casi che appartengono a più classi => partizionamento di T in piu sottoinsiemi secondo un test su un attributo=> nodo associato al test, con un sottoalbero per ogni possibile risultato del test stesso. Richiama l algoritmo su ogni ramo/sottoinsieme 2 1

2 Condizione di terminazione c4.5 non si ferma solo quando trova insiemi uniformi o vuoti, si ferma anche se Nessun test e tale che almeno due sottoinsiemi contengano un numero minimo di casi Il numero minimo di casi e un opzione di c4.5, di default vale 2 3 Esempio Istanze: sabati mattina Concetti: sabato adatto a giocare a tennis e sabato non adatto a giocare a tennis Attributi: outlook, con valori {sunny,overcast,rain} temperature, con valori numerici humidity, con valori numerici windy, con valori {true, false} 4 2

3 Training set No Outlook Temp ( F) Humid (%) Windy Class D1 sunny T P D2 sunny T N D3 sunny F N D4 sunny F N D5 sunny F P D6 overcast T P D7 overcast F P D8 overcast T P D9 overcast F P D10 rain T N D11 rain T N D12 rain F P D13 rain F P D14 rain F P 5 Albero di decisione Outlook sunny rain overcast Humidity 75 Windy true false true false P N P N P 6 3

4 Albero di decisione Outlook=sunny humidity 75: P humidity > 75: N Outlook=overcast: P Outlook=rain windy=true: N windy=false: P 7 c4.5 command lines c4.5 e c4.5rules -f [filename] specifica il nome del file da usare c4.5 f golf c4.5rules f golf -u specifica di testare le regole prodotte sul test-set c4.5 f golf u c4.5rules f golf u -v [1-3] livello di verbosità dell output (default=1) c4.5 f golf v2 -p (soltanto c4.5) calcola una soglia probabilistica per gli attributi continui consult 8 4

5 c4.5 files Input files Filename.names Filename.data Filename.test Output files Filename.out Filename.r.out Filename.t.out Filename.tree Filename.rules Filename.unpruned 9 Input files: : golf.names e golf.data Classi Attributi Training set 10 5

6 c4.5 f golf Data set Decision tree Risultato della valutazione 11 c4.5rules f golf Regole Risultato dell applicazione delle regole Confusion matrix 12 6

7 labor-neg.names labor-neg.data 13 c4.5 f labor-neg -u 14 7

8 c4.5rules f labor-neg -u 15 Pruning di un albero decisionale c4.5 utilizza la tecnica chiamata error-based pruning Ogni sottoalbero è sostituito da una foglia se la percentuale stimata di errore risulta minore Vengono usati gli stessi casi del training set Calcolo basato sull upper bound della probabilità di errore e su calcoli basati sulla teoria degli insiemi di confidenza derivata dalla Statistica. 16 8

9 Esempio di pruning Decision Tree: physician fee freeze = n: adoption of the budget resolution = y: democrat (151.0) adoption of the budget resolution = u: democrat (1.0) adoption of the budget resolution = n: education spending = n: democrat (6.0) education spending = y: democrat (9.0) education spending = u: republican (1.0) physician fee freeze = y: synfuels corporation cutback = n: republican (97.0/3.0) synfuels corporation cutback = u: republican (4.0) synfuels corporation cutback = y: duty free exports = y: democrat (2.0) duty free exports = u: republican (1.0) duty free exports = n: education spending = n: democrat (5.0/2.0) education spending = y: republican (13.0/2.0) education spending = u: democrat (1.0) physician fee freeze = u: water project cost sharing = n: democrat (0.0) water project cost sharing = y: democrat (4.0) water project cost sharing = u: mx missile = n: republican (0.0) mx missile = y: democrat (3.0/1.0) mx missile = u: republican (2.0) Simplified Decision Tree: physician fee freeze = n: democrat (168.0/2.6) physician fee freeze = y: republican (123.0/13.9) physician fee freeze = u: mx missile = n: democrat (3.0/1.1) mx missile = y: democrat (4.0/2.2) mx missile = u: republican (2.0/1.0) Original SubTree U 25% (0,6)=0.206 U 25% (0,9)=0.143 U 25% (0,1)=0.750 Predicted Error 6* * *0.750 = Foglia democrat: U 25% (1,16)=0.157 Predicted Error = 16*0.157 = Aste combinatorie : attributi Rif.: K. Leyton-Brown et al. Learning the empirical hardness of optimization problems: the case of combinatorial auctions 18 9

10 Aste combinatorie : input files names data 19 Aste combinatorie : output 20 10

11 Aste combinatorie: decision trees 21 11

C4.5 Algorithms for Machine Learning

C4.5 Algorithms for Machine Learning C4.5 Algorithms for Machine Learning C4.5 Algorithms for Machine Learning Apprendimento di alberi decisionali c4.5 [Qui93b,Qui96] Evoluzione di ID3, altro sistema del medesimo autore, J.R. Quinlan Ispirato

Dettagli

Apprendimento di alberi di decisione

Apprendimento di alberi di decisione Apprendimento di alberi di decisione Apprendimento di alberi di decisione Sistemi che apprendono alberi di decisione: CLS, IDR, C4, ASSISTANT, ID5, CART, ID3 etc. Problemi appropriati: le istanze sono

Dettagli

Alberi di Decisione. Fabio Aiolli Sito web del corso

Alberi di Decisione. Fabio Aiolli  Sito web del corso Alberi di Decisione Fabio Aiolli www.math.unipd.it/~aiolli Sito web del corso www.math.unipd.it/~aiolli/corsi/1516/aa/aa.html Alberi di Decisione In molte applicazioni del mondo reale non è sufficiente

Dettagli

Apprendimento di insiemi disgiuntivi di regole

Apprendimento di insiemi disgiuntivi di regole Apprendimento di insiemi disgiuntivi di regole Apprendimento di insiemi disgiuntivi di regole Consideriamo prima l apprendimento di un singolo concetto target (attributo target booleano). Regole della

Dettagli

Dr. A. Appice. Alberi di Decisione. Caso di studio di Metodi Avanzati di Programmazione AA 2012-2013

Dr. A. Appice. Alberi di Decisione. Caso di studio di Metodi Avanzati di Programmazione AA 2012-2013 Alberi di Decisione Caso di studio di Metodi Avanzati di Programmazione AA 2012-2013 Data Mining Lo scopo del data mining è l estrazione (semi) automatica di conoscenza nascosta in voluminose basi di dati

Dettagli

Sistemi Intelligenti 57. Alberi di Decisione. funzioni target con valori di output discreti (in generale più di 2 valori);

Sistemi Intelligenti 57. Alberi di Decisione. funzioni target con valori di output discreti (in generale più di 2 valori); Sistemi Intelligenti 57 Alberi di Decisione In molte applicazioni del mondo reale non è sufficiente apprendere funzioni booleane con ingressi binari. Gli Alberi di Decisione sono particolarmente adatti

Dettagli

Training Set Test Set Find-S Dati Training Set Def: Errore Ideale Training Set Validation Set Test Set Dati

Training Set Test Set Find-S Dati Training Set Def: Errore Ideale Training Set Validation Set Test Set Dati " #!! Suddivisione tipica ( 3 5 6 & ' ( ) * 3 5 6 = > ; < @ D Sistemi di Elaborazione dell Informazione Sistemi di Elaborazione dell Informazione Principali Paradigmi di Apprendimento Richiamo Consideriamo

Dettagli

Apprendimento basato sulle istanze

Apprendimento basato sulle istanze Apprendimento basato sulle istanze Apprendimento basato sulle istanze Apprendimento: semplice memorizzazione di tutti gli esempi Classificazione di una nuova istanza x j : reperimento degli

Dettagli

Introduzione alle tecniche di Data Mining. Prof. Giovanni Giuffrida

Introduzione alle tecniche di Data Mining. Prof. Giovanni Giuffrida Introduzione alle tecniche di Data Mining Prof. Giovanni Giuffrida Programma Contenuti Introduzione al Data Mining Mining pattern frequenti, regole associative Alberi decisionali Clustering Esempio di

Dettagli

APPRENDIMENTO_SEQUENZIALE(Attributotarget,Attributi,Esempi)

APPRENDIMENTO_SEQUENZIALE(Attributotarget,Attributi,Esempi) Apprendimento di insiemi disgiuntivi di regole Apprendimento di insiemi disgiuntivi di regole Consideriamo prima l apprendimento di un singolo concetto target (attributo target booleano). Regole della

Dettagli

Ingegneria della Conoscenza e Sistemi Esperti Lezione 5: Regole di Decisione

Ingegneria della Conoscenza e Sistemi Esperti Lezione 5: Regole di Decisione Ingegneria della Conoscenza e Sistemi Esperti Lezione 5: Regole di Decisione Dipartimento di Elettronica e Informazione Politecnico di Milano Perchè le Regole? Le regole (if-then) sono espressive e leggibili

Dettagli

Tecniche di riconoscimento statistico

Tecniche di riconoscimento statistico On AIR s.r.l. Tecniche di riconoscimento statistico Applicazioni alla lettura automatica di testi (OCR) Parte 9 Alberi di decisione Ennio Ottaviani On AIR srl ennio.ottaviani@onairweb.com http://www.onairweb.com/corsopr

Dettagli

Classificazione Validazione Decision Tree & kmeans. Renato Mainetti

Classificazione Validazione Decision Tree & kmeans. Renato Mainetti Classificazione Validazione Decision Tree & kmeans Renato Mainetti Apprendimento Supervisionato e Non Supervisionato: forniamo input e output Non supervisionato: forniamo solo input 2 Apprendimento Supervisionato

Dettagli

Alberi. Strutture dati: Alberi. Alberi: Alcuni concetti. Alberi: definizione ricorsiva. Alberi: Una prima realizzazione. Alberi: prima Realizzazione

Alberi. Strutture dati: Alberi. Alberi: Alcuni concetti. Alberi: definizione ricorsiva. Alberi: Una prima realizzazione. Alberi: prima Realizzazione Alberi Strutture dati: Alberi Strutture gerarchiche di dati Esempi Il file system di un sistema operativo L organigramma di un azienda Alberi generali, alberi n-ari, alberi binari, Ogni nodo ha un unico

Dettagli

Note per la Lezione 4 Ugo Vaccaro

Note per la Lezione 4 Ugo Vaccaro Progettazione di Algoritmi Anno Accademico 2016 2017 Note per la Lezione 4 Ugo Vaccaro Ripasso di nozioni su Alberi Ricordiamo che gli alberi rappresentano una generalizzazione delle liste, nel senso che

Dettagli

Laboratorio di Python

Laboratorio di Python Laboratorio di Python Alberi binari Lab15 12 Maggio 2017 Outline Correzione esercizi per oggi Alberi binari Teoria Esercizi Esercizi per casa Saluti Esercizio 1 per casa Scrivere una funzione palindroma(s)

Dettagli

corso di: Apprendimento Automatico modulo A Nicola Fanizzi Dipartimento di Informatica Università degli studi di Bari aggiornamento: 18/11/08

corso di: Apprendimento Automatico modulo A Nicola Fanizzi Dipartimento di Informatica Università degli studi di Bari aggiornamento: 18/11/08 Introduzione corso di: Apprendimento Automatico modulo A Nicola Fanizzi Dipartimento di Informatica Università degli studi di Bari aggiornamento: 18/11/08 Apprendimento automatico (mod. A) - N.Fanizzi

Dettagli

Weka Project. Weka. Weka Project. Formato.arff. Modalità di utilizzo di Weka. Formato.arff

Weka Project. Weka. Weka Project. Formato.arff. Modalità di utilizzo di Weka. Formato.arff Weka Project Weka Machine Learning Algorithms in Java Waikato Environment for Knowledge Analysis Algoritmi di Data Mining e Machine Learning realizzati in Java Preprocessing Classificazione Clustering

Dettagli

Problemi di ordinamento

Problemi di ordinamento Problemi di ordinamento Input: una sequenza di n numeri a 1, a 2,..., a n ; Output: una permutazione a 1, a 2,..., a n di a 1, a 2,..., a n tale che a 1 a 2... a n. Generalmente, la sequenza è rappresentata

Dettagli

Esercizi su alberi binari

Esercizi su alberi binari Esercizi su alberi binari Esercizi svolti: Determinazione nodi contenti verifica completezza verifica quasi completezza lunghezza del cammino interno determinazione ultima foglia in un quasi completo verifica

Dettagli

Algoritmi e strutture dati

Algoritmi e strutture dati Algoritmi e strutture dati Roberto Cordone A. A. 2015-16 Capitolo 3 Implementazioni dei dizionari ordinati Nota: queste dispense sono un rapido riassunto delle lezioni svolte nel dicembre 2015 e gennaio

Dettagli

Data mining: classificazione DataBase and Data Mining Group of Politecnico di Torino

Data mining: classificazione DataBase and Data Mining Group of Politecnico di Torino DataBase and Data Mining Group of Database and data mining group, Database and data mining group, DataBase and Data Mining Group of DataBase and Data Mining Group of So dati insieme di classi oggetti etichettati

Dettagli

Classificazione e Predizione

Classificazione e Predizione Lezione di TDM DM del 16 Aprile 2007 Francesco Bonchi, KDD Lab Pisa, ISTI-C.N.R. 1 Lezione odierna Intuizioni sul concetto di classificazione Alberi di decisione Alberi di decisione con Weka Classificazione:

Dettagli

Espressioni aritmetiche

Espressioni aritmetiche Espressioni aritmetiche Consideriamo espressioni costruite a partire da variabili e costanti intere mediante applicazione delle operazioni di somma, sottrazione, prodotto e divisione (intera). Ad esempio:

Dettagli

La classificazione. Sommario. Intuizioni sul concetto di classificazione. Descrivete la propensione all acquisto acquisto dei clienti

La classificazione. Sommario. Intuizioni sul concetto di classificazione. Descrivete la propensione all acquisto acquisto dei clienti Sommario La classificazione Intuizioni sul task di classificazione Classificazione e apprendimento induttivo valutazione di un modello di classificazione Tipi di modelli di classificazione alberi di decisione

Dettagli

Segmentazione automatica della carotide basata sulla classificazione dei pixel

Segmentazione automatica della carotide basata sulla classificazione dei pixel Segmentazione automatica della carotide basata sulla classificazione dei pixel Samanta Rosati, Filippo Molinari, Gabriella Balestra Biolab, Dipartimento di Elettronica e Telecomunicazioni, Politecnico

Dettagli

Stima della qualità dei classificatori per l analisi dei dati biomolecolari

Stima della qualità dei classificatori per l analisi dei dati biomolecolari Stima della qualità dei classificatori per l analisi dei dati biomolecolari Giorgio Valentini e-mail: valentini@dsi.unimi.it Rischio atteso e rischio empirico L` apprendimento di una funzione non nota

Dettagli

Decision Trees. venerdì, 7 ottobre Giuseppe Manco

Decision Trees. venerdì, 7 ottobre Giuseppe Manco Decision Trees venerdì, 7 ottobre 2009 Giuseppe Manco Riferimenti: Chapter 3, Mitchell Section 5.2 Hand, Mannila, Smith Section 7.3 Han, Kamber Chapter 6 Witten, Frank Alberi di decisione Esempi Modelli:

Dettagli

Capitolo 3: Gli alberi. Alberi n-ari

Capitolo 3: Gli alberi. Alberi n-ari Alberi n-ari Un albero ordinato è formato da un insieme finito di elementi, detti nodi. Se questo insieme non è vuoto, allora un particolare nodo avrà il ruolo di radice dell albero e gli altri nodi, se

Dettagli

MATLAB I/O. Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA

MATLAB I/O. Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA MATLAB I/O Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA Funzione input valore = input( inserisci un valore ); Matlab stampa a video la stringa inserisci un valore ed aspetta di ricevere

Dettagli

Machine Learning:Version Space. Sommario

Machine Learning:Version Space. Sommario Machine Learning:Version Space Sommario Ripasso di alcune definizioni sul ML Lo spazio delle ipotesi H Apprendimento di una funzione booleana: il concept learning Version Space Spazio delle Ipotesi H

Dettagli

PROVETTE D ESAME. Algoritmi e Strutture Dati

PROVETTE D ESAME. Algoritmi e Strutture Dati PROVETTE D ESAME Algoritmi e Strutture Dati ESERCIZIO 1 Si ottengano limiti superiori e inferiori per la seguente ricorrenza ESERCIZIO 1 ESERCIZIO 2 Dato un albero binario T, il grado di sbilanciamento

Dettagli

Informatica 3. Informatica 3. LEZIONE 17: Alberi generici. Lezione 17 - Modulo 1. Introduzione. ADT dell albero generico.

Informatica 3. Informatica 3. LEZIONE 17: Alberi generici. Lezione 17 - Modulo 1. Introduzione. ADT dell albero generico. Informatica 3 Informatica 3 LEZIONE 17: lberi generici Lezione 17 - Modulo 1 Modulo 1: Definizione e DT Modulo 2: Implementazione Modulo 3: lberi e classi di equivalenza Definizione e DT Politecnico di

Dettagli

Corso di Intelligenza Artificiale A.A. 2016/2017

Corso di Intelligenza Artificiale A.A. 2016/2017 Università degli Studi di Cagliari Corsi di Laurea Magistrale in Ing. Elettronica Corso di Intelligenza rtificiale.. 26/27 Esercizi sui metodi di apprendimento automatico. Si consideri la funzione ooleana

Dettagli

Regole associative con Weka

Regole associative con Weka Regole associative con Weka Soluzioni degli esercizi Prof. Matteo Golfarelli Alma Mater Studiorum - Università di Bologna Apriori parametri e output In questa fase utilizzeremo il data set CensusTrainining.arff

Dettagli

Lezione 7 Alberi binari: visite e alberi di ricerca

Lezione 7 Alberi binari: visite e alberi di ricerca Lezione 7 Alberi binari: visite e alberi di ricerca Informatica 6 Maggio 2015 Operazioni sugli alberi: visita La visita di un albero esplora tutti i nodi ed esegue una qualche operazione su di essi. Per

Dettagli

Università degli Studi di L Aquila Facoltà di Scienze M.F.N. Corso di Laurea in Informatica. Modulo di Laboratorio di Algoritmi e Strutture Dati

Università degli Studi di L Aquila Facoltà di Scienze M.F.N. Corso di Laurea in Informatica. Modulo di Laboratorio di Algoritmi e Strutture Dati Università degli Studi di L Aquila Facoltà di Scienze M.F.N. Corso di Laurea in Informatica Modulo di Laboratorio di Algoritmi e Strutture Dati Alberi binari Giovanna Melideo melideo@di.univaq.it 1 Alberi

Dettagli

Strutture di accesso ai dati: B + -tree

Strutture di accesso ai dati: B + -tree Strutture di accesso ai dati: B + -tree A L B E R T O B E L U S S I S E C O N D A P A R T E A N N O A C C A D E M I C O 2 0 0 9-2 0 0 Osservazione Quando l indice aumenta di dimensioni, non può risiedere

Dettagli

Naïve Bayesian Classification

Naïve Bayesian Classification Naïve Bayesian Classification Di Alessandro rezzani Sommario Naïve Bayesian Classification (o classificazione Bayesiana)... 1 L algoritmo... 2 Naive Bayes in R... 5 Esempio 1... 5 Esempio 2... 5 L algoritmo

Dettagli

Alberi ed Alberi Binari

Alberi ed Alberi Binari Alberi ed Alberi Binari Il tipo di dato Albero Un albero è una struttura di data organizzata gerarchicamente. È costituito da un insieme di nodi collegati tra di loro: ogni nodo contiene dell informazione,

Dettagli

Alberi Binario in Java

Alberi Binario in Java Alberi Binario in Java Realizzare un albero binario di ricerca. L albero binario è di ricerca se esiste una relazione di ordinamento tra i valori dei nodi (valori comparabili). In particolare, dato un

Dettagli

Introduzione al data mining. Sistemi di elaborazione delle informazioni 2 Anno Accademico Prof. Mauro Giacomini

Introduzione al data mining. Sistemi di elaborazione delle informazioni 2 Anno Accademico Prof. Mauro Giacomini Introduzione al data mining Sistemi di elaborazione delle informazioni 2 Anno Accademico 2007-2008 Prof. Mauro Giacomini Definizione Processo che impiega una o più tecniche di apprendimento computerizzate

Dettagli

QUICKSORT. Basato sul paradigma divide-et-impera (come MERGE-SORT)

QUICKSORT. Basato sul paradigma divide-et-impera (come MERGE-SORT) QUICKSORT Basato sul paradigma divide-et-impera (come MERGE-SORT) Divide: stabilisce un valore di q tale da dividere l array A[p.. r] in due sottoarray non vuoti A[p.. q] e A[q+1.. r], dove ogni elemento

Dettagli

Apprendimento Automatico (Feature Selection e Kernel Learning)

Apprendimento Automatico (Feature Selection e Kernel Learning) Apprendimento Automatico (Feature Selection e Kernel Learning) Fabio Aiolli www.math.unipd.it/~aiolli Sito web del corso www.math.unipd.it/~aiolli/corsi/1516/aa/aa.html Servono tutti gli attributi? Gli

Dettagli

Classificazione e Predizione

Classificazione e Predizione Classificazione e Predizione Gianluca Amato Corso di Laurea Specialistica in Economia Informatica Università G. D'Annunzio di Chieti-Pescara ultimo aggiornamento: 24/04/09 Introduzione ai concetti di Classificazione

Dettagli

Note sull utilizzo di ISAGRAF V. 3.31

Note sull utilizzo di ISAGRAF V. 3.31 Appendice B Note sull utilizzo di ISAGRAF V. 3.31 B.1 Lettura del fronte di salita di una variabile Nel linguaggio Ladder è sufficiente settare il contatore come in figura B.1(A) per leggere il fronte

Dettagli

Ingegneria della Conoscenza e Sistemi Esperti Lezione 4: Alberi di Decisione

Ingegneria della Conoscenza e Sistemi Esperti Lezione 4: Alberi di Decisione Ingegneria della Conoscenza e Sistemi Esperti Lezione 4: Alberi di Decisione Dipartimento di Elettronica e Informazione Apprendimento Supervisionato I dati considerati considerati degli esempi di un fenomeno

Dettagli

Basi di Dati e Sistemi Informativi. Organizzazione fisica dei dati. Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale

Basi di Dati e Sistemi Informativi. Organizzazione fisica dei dati. Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale Giuseppe Loseto Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale Struttura DBMS Gestore delle interrogazioni Decide le strategie di accesso ai dati per rispondere alle interrogazioni Gestore

Dettagli

UTILIZZO DELLO STRUMENTO ANALISI DATI DI EXCEL 1 PER ANALISI DI CORRELAZIONE E STIMA DI MODELLI DI REGRESSIONE

UTILIZZO DELLO STRUMENTO ANALISI DATI DI EXCEL 1 PER ANALISI DI CORRELAZIONE E STIMA DI MODELLI DI REGRESSIONE UTILIZZO DELLO STRUMENTO ANALISI DATI DI EXCEL 1 PER ANALISI DI CORRELAZIONE E STIMA DI MODELLI DI REGRESSIONE [a cura di L.Secondi, ad uso degli studenti del corso di Statistica per le ricerche di mercato]

Dettagli

ALGORITMI E STRUTTURE DATI

ALGORITMI E STRUTTURE DATI ALGORITMI E STRUTTURE DATI Esercitazioni AndreA Orlandini http://www.dia.uniroma3.it/~orlandin/asd/ e-mail: orlandin@dia.uniroma3.it Orario di ricevimento: Martedì 14.00-16.00 Puntatori e Alberi, ABR StudentiDIA

Dettagli

Indici multilivello dinamici (B-alberi e B + -alberi) Alberi di ricerca - 1. Un esempio. Alberi di ricerca - 3. Alberi di ricerca - 2

Indici multilivello dinamici (B-alberi e B + -alberi) Alberi di ricerca - 1. Un esempio. Alberi di ricerca - 3. Alberi di ricerca - 2 INDICI MULTILIVELLO DINAMICI Indici multilivello dinamici (B-alberi e B + -alberi) Gli indici multilivello dinamici (B-alberi e B + -alberi) sono casi speciali di strutture ad albero. Un albero è formato

Dettagli

Alberi. Definizioni principali

Alberi. Definizioni principali Definizioni principali Un albero è una struttura dati che contiene oggetti organizzati gerarchicamente (a differenza della lista di nodi, dell'array list, i cui elementi sono organizzati linearmente) radice

Dettagli

2.2 Alberi di supporto di costo ottimo

2.2 Alberi di supporto di costo ottimo . Alberi di supporto di costo ottimo Problemi relativi ad alberi hanno numerose applicazioni: progettazione di reti (comunicazione, teleriscaldamento,...) protocolli reti IP memorizzazione compatta di

Dettagli

Intro. Traduzione guidata dalla sintassi. Attributi. Due notazioni a diversi livelli. Due notazioni a diversi livelli. Il flusso concettuale

Intro. Traduzione guidata dalla sintassi. Attributi. Due notazioni a diversi livelli. Due notazioni a diversi livelli. Il flusso concettuale Intro Traduzione guidata dalla sintassi Attributi e Definizioni guidate dalla sintassi In questa ultima parte del corso vediamo, in breve, una tecnica che permette di effettuare analisi semantiche e traduzione

Dettagli

GLI ALBERI BINARI DI RICERCA. Cosimo Laneve

GLI ALBERI BINARI DI RICERCA. Cosimo Laneve GLI ALBERI BINARI DI RICERCA Cosimo Laneve argomenti 1. alberi binari di ricerca 2. la ricerca di elementi e la complessità computazionale 3. operazione di cancellazione di elementi 4. esempi/esercizi

Dettagli

Manipolazioni elementari di flussi di testo strutturati

Manipolazioni elementari di flussi di testo strutturati Manipolazioni elementari di flussi di testo strutturati L output di molti comandi è costituito da flussi di testo strutturati: ogni riga rappresenta una parte del risultato ed è divisa in campi (fields)

Dettagli

Algoritmi Greedy. Tecniche Algoritmiche: tecnica greedy (o golosa) Un esempio

Algoritmi Greedy. Tecniche Algoritmiche: tecnica greedy (o golosa) Un esempio Algoritmi Greedy Tecniche Algoritmiche: tecnica greedy (o golosa) Idea: per trovare una soluzione globalmente ottima, scegli ripetutamente soluzioni ottime localmente Un esempio Input: lista di interi

Dettagli

Verifica parte IIB. Grafo di controllo. Criteri di selezione per test strutturali (white box) Test. Rif. Ghezzi et al

Verifica parte IIB. Grafo di controllo. Criteri di selezione per test strutturali (white box) Test. Rif. Ghezzi et al Verifica parte IIB Rif. Ghezzi et al. 6.3.4.1 Test In piccolo White box Black box Condizioni di confine Problema dell' Oracolo In grande Test di modulo Test di integrazione Test di Sistema Test di Accettazione

Dettagli

Gestione della produzione e della supply chain Logistica distributiva

Gestione della produzione e della supply chain Logistica distributiva Gestione della produzione e della supply chain Logistica distributiva Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Convergenza dell algoritmo Se non

Dettagli

Sistemi per la gestione delle basi di dati

Sistemi per la gestione delle basi di dati Sistemi per la gestione delle basi di dati Esercitazione #5 Data mining Obiettivo Applicare algoritmi di data mining per la classificazione al fine di analizzare dati reali mediante l utilizzo dell applicazione

Dettagli

Makefile. Il file dependency system di Unix (serve ad automatizzare il corretto aggiornamento di più file che hanno delle dipendenze)

Makefile. Il file dependency system di Unix (serve ad automatizzare il corretto aggiornamento di più file che hanno delle dipendenze) Makefile Il file dependency system di Unix (serve ad automatizzare il corretto aggiornamento di più file che hanno delle dipendenze) 1 makefile: idea di fondo (1) Permette di esprimere dipendenze fra file

Dettagli

liste ogni nodo ha un successore, tranne l ultimo della lista che ne ha zero; alberi binari ogni nodo ha zero, uno oppure due figli

liste ogni nodo ha un successore, tranne l ultimo della lista che ne ha zero; alberi binari ogni nodo ha zero, uno oppure due figli Alberi generali Gli alberi visti fino a questo momento erano insiemi di nodi collegati fra di loro, in cui ogni nodo poteva avere al massimo due figli. Negli alberi generali, ogni nodo può avere un numero

Dettagli

Dati e Algoritmi I (Pietracaprina) Esercizi svolti sui Grafi

Dati e Algoritmi I (Pietracaprina) Esercizi svolti sui Grafi Dati e Algoritmi I (Pietracaprina) Esercizi svolti sui Grafi Dati e Algoritmi I (Pietracaprina): Esercizi 1 Problema 1 (Esercizio C-14.34 del testo [GTG14]) Sia G = (V, E) un grafo non diretto con n =

Dettagli

Esercitazione 4: Trigger in DB2

Esercitazione 4: Trigger in DB2 Esercitazione 4: Trigger in DB2 Sistemi Informativi L-B Home Page del corso: http://www-db.deis.unibo.it/courses/sil-b/ Versione elettronica: esercitazione4.pdf Sistemi Informativi L-B Definire trigger

Dettagli

2.2 Alberi di supporto di costo ottimo

2.2 Alberi di supporto di costo ottimo . Alberi di supporto di costo ottimo Problemi relativi ad alberi hanno numerose applicazioni: progettazione di reti (comunicazione, teleriscaldamento,...) memorizzazione compatta di sequenze (DNA) diffusione

Dettagli

Esercitazione 6. Alberi binari di ricerca

Esercitazione 6. Alberi binari di ricerca Esercitazione 6 Alberi binari di ricerca Struttura base Rappresentabile attraverso una struttura dati concatenata in cui ogni nodo è un oggetto di tipo struttura Ogni nodo contiene: campo chiave (key)

Dettagli

Il metodo dei Piani di Taglio (Cutting Planes Method)

Il metodo dei Piani di Taglio (Cutting Planes Method) Il metodo dei Piani di Taglio (Cutting Planes Method) E un metodo di soluzione dei problemi (IP) di tipo generale. L idea di base: Se la soluzione di (RL) non è intera allora la soluzione ottima intera

Dettagli

Lab. di Sistemi Operativi - Esercitazione - Comandi Shell

Lab. di Sistemi Operativi - Esercitazione - Comandi Shell Lab. di Sistemi Operativi - Esercitazione - Comandi Shell 1 - Esercizi Comandi Unix - 2 Esercizio n 0 0a) creare una cartella EsercitazioneLSO-1 nella directory di lavoro 0b) creare un file testo chiamato

Dettagli

Classificazione I. Classificazione: Definizione

Classificazione I. Classificazione: Definizione Classificazione I Prof. Matteo Golfarelli Alma Mater Studiorum - Università di Bologna Classificazione: Definizione Data una collezione di record (training set ) Ogni record è composto da un insieme di

Dettagli

Verifica e Validazione del Software

Verifica e Validazione del Software Verifica e Validazione del Software Testing Black Box Ingegneria del Software 2 Testing Black Box 1 Riferimenti Ian Sommerville, Ingegneria del Software, capitoli 22-23-24 (più dettagliato sui processi)

Dettagli

Shell: variabili di sistema. Per visualizzare il valore di tutte le variabili d ambiente si usa il comando set

Shell: variabili di sistema. Per visualizzare il valore di tutte le variabili d ambiente si usa il comando set PATH Shell: variabili di sistema HOME USER PWD SHELL HOSTNAME HOSTTYPE Per visualizzare il valore di tutte le variabili d ambiente si usa il comando set Shell: variabili di sistema Per visualizzare il

Dettagli

Scopo del laboratorio

Scopo del laboratorio p. 1/1 Scopo del laboratorio Imparare ad usare programmi che implementino metodi di ottimizzazione: simplesso, branch and bound ecc. utilizzarli per risolvere un problema proposto Modellatori Solver p.

Dettagli

COMPITO DI APPLICAZIONI DI INTELLIGENZA ARTIFICIALE 19 marzo 2009 (Punteggio su 30/30; Tempo 2h )

COMPITO DI APPLICAZIONI DI INTELLIGENZA ARTIFICIALE 19 marzo 2009 (Punteggio su 30/30; Tempo 2h ) COMPITO DI APPLICAZIONI DI INTELLIGENZA ARTIFICIALE 19 marzo 2009 (Punteggio su 30/30; Tempo 2h ) Esercizio 1 (punti 8) Dato il seguente training set S: Temperatura Umidità Classe Alta Alta Pos Alta Bassa

Dettagli

Divide et impera su alberi

Divide et impera su alberi Divide et impera su alberi Caso base: peru = null o una foglia Decomposizione: riformula il problema per i sottoalberi radicati nei figli di u. Ricombinazione: ottieniilrisultatoconricombina 1 Decomponibile(u):

Dettagli

Corso di Laboratorio di Sistemi Operativi

Corso di Laboratorio di Sistemi Operativi Corso di Laboratorio di Sistemi Operativi Lezione 4 Alessandro Dal Palù email: alessandro.dalpalu@unipr.it web: www.unipr.it/~dalpalu Approfondimento su make http://http://capone.mtsu.edu/csdept/facilitiesandresources/make.htm

Dettagli

Lecture 14. Association Rules

Lecture 14. Association Rules Lecture 14 Association Rules Giuseppe Manco Readings: Chapter 6, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Association Rule Mining Dato un insieme di transazioni, trovare le regole che

Dettagli

Parte III: Algoritmo di Branch-and-Bound

Parte III: Algoritmo di Branch-and-Bound Parte III: Algoritmo di Branch-and-Bound Divide et Impera Sia z * max {c T x : x S} (1) un problema di ottimizzazione combinatoria difficile da risolvere. Domanda: E possibile decomporre il problema (1)

Dettagli

e applicazioni al dominio del Contact Management Andrea Brunello Università degli Studi di Udine

e applicazioni al dominio del Contact Management Andrea Brunello Università degli Studi di Udine e applicazioni al dominio del Contact Management Parte V: combinazione di Università degli Studi di Udine In collaborazione con dott. Enrico Marzano, CIO Gap srl progetto Active Contact System 1/10 Contenuti

Dettagli

Algoritmi e Strutture Dati. HeapSort

Algoritmi e Strutture Dati. HeapSort Algoritmi e Strutture Dati HeapSort Selection Sort: intuizioni L algoritmo Selection-Sort scandisce tutti gli elementi dell array a partire dall ultimo elemento fino all inizio e ad ogni iterazione: Viene

Dettagli

Soluzione dei problemi di Programmazione Lineare Intera

Soluzione dei problemi di Programmazione Lineare Intera Fondamenti di Ricerca Operativa T-A a.a. 2014-2015 Soluzione dei problemi di Programmazione Lineare Intera Andrea Lodi, Enrico Malaguti, Daniele Vigo rev. 1.1.a ottobre 2014 Fondamenti di Ricerca Operativa

Dettagli

Alberi. Alberi: definizioni. Alberi Binari. Esercizi su alberi binari: metodi ricorsivi. Struttura dati per alberi generici. ASD-L - Luca Tesei

Alberi. Alberi: definizioni. Alberi Binari. Esercizi su alberi binari: metodi ricorsivi. Struttura dati per alberi generici. ASD-L - Luca Tesei Alberi Alberi: definizioni Alberi Binari Esercizi su alberi binari: metodi ricorsivi Struttura dati per alberi generici 1 Alberi Gli alberi sono strutture dati naturalmente ricorsive Un albero è un particolare

Dettagli

Traduzione guidata dalla sintassi

Traduzione guidata dalla sintassi Traduzione guidata dalla sintassi Attributi e definizioni guidate dalla sintassi Dipartimento di Matematica e Informatica mariarita.diberardini@unicam.it Analisi Semantica Analisi sintattica - output:

Dettagli

Alberi e alberi binari I Un albero è un caso particolare di grafo

Alberi e alberi binari I Un albero è un caso particolare di grafo Alberi e alberi binari Un albero è un caso particolare di grafo È costituito da un insieme di nodi collegati tra di loro mediante archi Gli archi sono orientati (ogni arco esce da un nodo origine ed entra

Dettagli

Ingegneria degli Algoritmi (II parte pratica)

Ingegneria degli Algoritmi (II parte pratica) Ingegneria degli Algoritmi (II parte pratica) Correzione prova pratica Ing. Domenico Spera domenico.spera@students.uniroma2.eu Premessa Sono stati richiesti i seguenti task: Implementare la versione in-order

Dettagli

Tracce. 1. Data una lista di elementi di tipo intero, implementare in C++ le seguenti funzioni

Tracce. 1. Data una lista di elementi di tipo intero, implementare in C++ le seguenti funzioni Algoritmi e Strutture Dati Tracce 1. Data una lista di elementi di tipo intero, implementare in C++ le seguenti funzioni int freq(list &L, int k): restituisce il numero di occorrenze dei multipli

Dettagli

Informatica 3. Informatica 3. LEZIONE 14: Alberi binari: introduzione. Lezione 14 - Modulo 1. Definizioni. Introduzione. Definizioni e proprietà

Informatica 3. Informatica 3. LEZIONE 14: Alberi binari: introduzione. Lezione 14 - Modulo 1. Definizioni. Introduzione. Definizioni e proprietà Informatica 3 Informatica 3 LEZIONE 14: Alberi binari: introduzione Lezione 14 - Modulo 1 Modulo 1: Definizioni e proprietà Modulo 2: Attraversamento degli alberi binari Definizioni e proprietà Politecnico

Dettagli

Ingegneria degli Algoritmi (II parte pratica)

Ingegneria degli Algoritmi (II parte pratica) Ingegneria degli Algoritmi (II parte pratica) Lezione 8 Ing. Domenico Spera domenico.spera@students.uniroma2.eu Sommario Tabelle hash Funzioni hash Liste di collisione Inidirizzamento aperto Import (..ultima

Dettagli

5 - Istruzioni condizionali

5 - Istruzioni condizionali 5 - Istruzioni condizionali Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it

Dettagli

28/02/2014 Copyright V. Moriggia

28/02/2014 Copyright V. Moriggia Informatica per la Finanza 3 Le variabili in VBA Altri I/O 28/02/2014 Copyright 2005-2007 V. Moriggia 1 28/02/2014 3.2 Le variabili in VBA V. Moriggia 1 28/02/2014 3.3 Dichiarazione di variabili in VBA

Dettagli

Dati e Algoritmi 1: A. Pietracaprina. Grafi (II parte)

Dati e Algoritmi 1: A. Pietracaprina. Grafi (II parte) Dati e Algoritmi 1: A. Pietracaprina Grafi (II parte) 1 Breath-First Search (algoritmo iterativo) Si assume una rappresentazione tramite liste di adiacenza. L ordine con cui si visitano i vicini di un

Dettagli

lezione 9 min-heap binario Heap e Alberi posizionali generali

lezione 9 min-heap binario Heap e Alberi posizionali generali lezione 9 Heap e Alberi posizionali generali min-heap binario Un min-heap è un albero binario quasi completo in cui ogni nodo i diverso dalla radice soddisfa la seguente proprietà: il valore memorizzato

Dettagli

Esercizi di Algoritmi e Strutture Dati

Esercizi di Algoritmi e Strutture Dati Esercizi di Algoritmi e Strutture Dati Moreno Marzolla marzolla@cs.unibo.it Ultimo aggiornamento: 29 novembre 2010 1 Rotazioni semplici in ABR Si consideri l operazione di rotazione semplice applicata

Dettagli

DATA MINING PER IL MARKETING

DATA MINING PER IL MARKETING DATA MINING PER IL MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione Zani-Cerioli, Cap. XI CHAID: Chi-square Automatic Interaction

Dettagli

Dati e Algoritmi I (Pietracaprina) Esercizi su Alberi Binari di Ricerca e (2,4)-Tree

Dati e Algoritmi I (Pietracaprina) Esercizi su Alberi Binari di Ricerca e (2,4)-Tree Dati e Algoritmi I (Pietracaprina) Esercizi su Alberi Binari di Ricerca e (2,4)-Tree Dati e Algoritmi I (Pietracaprina): Esercizi 1 Problema 1 Si definisca Interval Tree un albero binario di ricerca le

Dettagli

Alberi binari (radicati e ordinati) della radice Il padre del nodo 5 e del nodo 3

Alberi binari (radicati e ordinati) della radice Il padre del nodo 5 e del nodo 3 Alberi binari (radicati e ordinati) Il figlio sinistro della radice Il padre del nodo 5 e del nodo 3 4 3 Il figlio sinistro del nodo 2 2 5 1 6 7 8 9 La radice Il figlio destro della radice una foglia Figlio

Dettagli

Controllo di flusso negli script: if-then-else

Controllo di flusso negli script: if-then-else Controllo di flusso negli script: if--else Il coman condizionale if condition_command true_commands else false_commands esegue il coman condition command e utilizza il suo exit status per decidere se eseguire

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino A.A. 2006/07 Il concetto di dato Il concetto di tipo di dato Insertion Sort for j 2 to lenght[a]

Dettagli

Machine Learning: apprendimento, generalizzazione e stima dell errore di generalizzazione

Machine Learning: apprendimento, generalizzazione e stima dell errore di generalizzazione Corso di Bioinformatica Machine Learning: apprendimento, generalizzazione e stima dell errore di generalizzazione Giorgio Valentini DI Università degli Studi di Milano 1 Metodi di machine learning I metodi

Dettagli

Pulse Sense: la matematica per l individuazione di anomalie in un tracciato elettrocardiografico

Pulse Sense: la matematica per l individuazione di anomalie in un tracciato elettrocardiografico Pulse Sense: la matematica per l individuazione di anomalie in un tracciato elettrocardiografico Pasqualina Fragneto Quando i matematici non entrano in aula Trento 2017 1 AST Applied Math Team Che cosa

Dettagli

Algoritmi e Strutture Dati Laboratorio 15/12/2008. Daniele Loiacono

Algoritmi e Strutture Dati Laboratorio 15/12/2008. Daniele Loiacono Algoritmi e Strutture Dati Laboratorio 15/12/2008 Problema della compressione Rappresentare i dati in modo efficiente Impiegare il numero minore di bit per la rappresentazione Goal: risparmio spazio su

Dettagli