Parallel Frequent Set Counting
|
|
- Edmondo Campana
- 5 anni fa
- Visualizzazioni
Transcript
1 Parallel Frequent Set Counting Progetto del corso di Calcolo Parallelo AA Salvatore Orlando 1
2 Cosa significa association mining? Siano dati un insieme di item un insieme di transazioni, ciascuna contenete un sottoinsieme di item Vogliamo trovare regole/associazioni del tipo: if I1 then I2 (sup, conf) dove: I1, I2 sono insieme di item (itemset) I1, I2 hanno un sufficiente supporto: P(I1+I2) è il supporto La regola associativa ha sufficiente confidenza: P(I2 I1) è la confidenza 2
3 Association mining L utente specifica l interesse delle regole: Minimum support (minsup) Minimum confidence (minconf) 1. Frequent Set Countint (FSC): Trova tutti gli itemset frequenti (>= minsup) Spazio di ricerca esponenziale Molto costoso sia per quanto riguarda Computazione e I/O 2. Genera regole Solo regole associative forti (>= minconf) Passo poco costoso 3
4 Apriori (Frequent Set Counting) Colleziona i conteggi degli item singoli seleziona solo gli item più frequenti Individua le coppie candidate ed effettua i conteggi seleziona solo le coppie più frequenti Individua le triple candidate ed effettua i conteggi seleziona solo le triple più frequenti E così via Principio guida: tutti i sottoinsiemi di un itemset frequente sono anch essi frequenti Questo principio è usato da Apriori per effettuare il pruning dei candidati 4
5 Illustriamo il principio di Apriori Senza pruning C i = C 1 = 6 C 2 = 15 C 3 = 20 Con pruning: 6+6+2=14 5
6 Contare gli itemset frequenti Gli itemset frequenti sono individuati contando quanti candidati appaiono in ciascuna delle transazioni del database Per velocizzare il conteggio, bisogna velocizzare la ricerca dei vari candidati all interno di ciascuna transazione Esistono vari metodi, che fanno affidamento dell ordinamento degli item all interno delle transazioni e degli itemset Item rappresentati tramite identificatori numerici 6
7 Prima iterazione di Apriori m: gli identificatori numerici associati agli item vanno da 1 a m D: file delle transazioni t: generica transazione F 1 : set dei set frequenti di lunghezza 1 7
8 Loop principale C k : itemset candidati di lunghezza k L algoritmo Apriori termina all iterazione k se non si individuano itemset frequenti, oppure se non si trovano candidati 8
9 Generazione dei candidati con pruning Gli itemset in F k e C k sono ordinati c C k se e solo se tutti i k-1-itemset c c appartengono a F k-1 Condizione necessaria affinché un k-itemset c possa appartenere a C k se esiste una coppia di itemset di F k-1 che con c condividano un identico prefisso di k-2 elementi La condizione diventa sufficiente se tutti i sottoinsiemi di k-1 elementi di c appartengono a F k-1 9
10 Ordinamento Item come numeri Transazioni a formato variabile ciascuna transazione è una lista di interi ordinati in maniera crescente Itemset (itemset sia candidati e sia frequenti) ordinati F k e C k come vettori di itemset Vettori ordinati lessicograficamente Ordinamento di F k-1 utile per rendere più efficiente la costruzione di C k Più semplice individuare prefissi Ordinamento di C k utile per rendere più efficiente la ricerca dei candidati, e quindi la fase di conteggio 10
11 Ordinamento e conteggio L ordinamento degli item può essere sfruttata per determinare i candidati contenuti in una certa transazione Vengono usate strutture dati complesse per memorizzare i candidati e velocizzare la ricerca Hash-tree o Prefix-tree Vogliamo qui suggerire un metodo più semplice da implementare Sia data una transazione ordinata t={t 0, t 1, t 2,.,t z-1 }, z = t i 2-prefix dei possibili k-itemset ordinati presenti in t coppie ordinate (I 0,I 1 ), dove I 0 t e I 1 t se I 1 = t j allora in t esistono al massimo z-j-1 item che possono essere usati per costruire un k-itemset contenuto in t quindi, se z-j-1 < k-2, allora (I 0,I 1 ) non può essere un 2-prefix ammissibile 11
12 Ordinamento e conteggio: subset_and_count(c k, t) Tail di t t={t 0, t 1, t 2, t 3,.,t z-1 } C k Counts I 0 I 1 Per ogni (I 0, I 1 ) Effettua una ricerca binaria su C k per individuare l inizio del segmento composto da candidati (k-itemset) con prefisso: (I 0, I 1 ) ad esempio: ricerca (t 0, t 2 ) Scorri sequenzialmente il segmento per controllare se ciascun candidato è un sottoinsieme di Tail di t, e aggiorna eventualmente i contatori associati Segmento di C k con uno stesso 2-prefix (I 0, I 1 ) 12
13 Tecniche di parallelizzazione Consideriamo che Il Dataset può essere grande (elaborazione su disco) Per valori piccoli di minsup si ottengono molti candidati Data parallelism Partiziona solo il Database di Transazioni Partiziona anche i Candidati 13
14 Count Distribution (CD) Partiziona solo il Database di Transazioni Replica i candidati e conta in maniera distribuita Approccio noto come Count Distribution (CD) Ogni processore ha il completo insieme di candidati C k Ogni processore aggiorna i suoi contatori locali Riduzione globale per determinare il valore dei contatori NOTA: Se C k è troppo grande rispetto alla memoria, possono essere necessari scan multipli del database 14
15 Count Distribution (esempio iterazione 2) 15
16 Data Distribution (DD) Partiziona non solo il Database, ma anche i Candidati Ogni partizione dei candidati deve essere confrontata con l intero Dataset Partizioni dei dati comunicati fra tutti i processori Comunicazione finale per conoscere l F k globale, necessario per costruire C k+1 Alto costo di comunicazione Approccio utile quando i candidati diventano troppi e non possono essere mantenuti in memoria Anello per comunicare le partizioni tra i processori Shift sull anello e ed conteggio rispetto alla partizione remota ricevuta Tanti shift quanti sono i processori Possibile overlapping tra calcolo e comunicazione 16
17 Data Distribution (DD) 17
18 Data Distribution (DD) 18
19 Cluster di WS Architettura adatta per questo tipo di problema, in quanto le comunicazioni introdotte da questo algoritmo sono limitate Dischi multipli, utili per contenere i dati in ingresso / uscita dell algoritmo di FSC Di seguito, due modi per configurare il cluster Shared Nothing Shared Disk Considerare anche il load balancing Architetture eterogenee, o multiprogrammate 19
20 Valutazione Alcuni data set sono disponibili su: Formato Ascii Una transazione per linea (terminata da newline) item come numeri non-negativi, separati da bianchi ogni transazione è ordinata in modo crescente Bisogna fornire uno studio di prestazioni dato un supporto e un dataset, come cambia il tempo di esecuzione al variare del grado di parallelismo n i tempi di esecuzione aumentano abbassando il supporto minimo impostato curve di speedup e efficienza al variare di n 20
Parallel Frequent Set Counting
Parallel Frequent Set Counting Progetto del corso di Calcolo Parallelo AA 2001-02 Salvatore Orlando 1 Cosa significa association mining? Siano dati un insieme di item un insieme di transazioni, ciascuna
DettagliLecture 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
DettagliPattern Sequenziali. Prof. Matteo Golfarelli Alma Mater Studiorum - Università di Bologna
Pattern Sequenziali Prof. Matteo Golfarelli Alma Mater Studiorum - Università di Bologna Pattern sequenziali Spesso alle transazioni sono associate informazioni temporali che permettono di collegare tra
DettagliRegole associative Mario Guarracino Laboratorio di Sistemi Informativi Aziendali a.a. 2006/2007
Regole associative Mario Guarracino Laboratorio di Sistemi Informativi Aziendali a.a. 26/27 Introduzione Le regole associative si collocano tra i metodi di apprendimento non supervisionato e sono volte
DettagliGiuseppe Manco. Readings: Chapter 6, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman. Association rules mining
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
DettagliVerifica 3 aprile Soluzioni
Università di Pisa A.A. 2007-2008 Data Mining - Corso di Laurea Specialistica in Informatica per l economia e l Azienda Verifica 3 aprile 2008 - Soluzioni Esercizio 1 - Sequential Patterns (8 punti) Si
DettagliRegole associative. Il problema della scoperta di regole associative può essere espresso come segue Sia I = {i 1
Regole associative Regole associative Le regole associative descrivono correlazioni di eventi e possono essere viste come regole probabilistiche. Due eventi sono correlati quando sono frequentemente osservati
Dettagli5. La Market Basket Analysis
5. La Market Basket Analysis Riccardo Massari Metodi statistici per il Marketing Luiss, Roma R. Massari (Docente: P. D'Urso) 5. MBA 2017 1 / 51 Cosa impareremo sulla Market Basket Analysis 1 La Market
DettagliRegole associative. Regole associative. Regole associative. Regole associative
Le regole associative descrivono correlazioni di eventi e possono essere viste come regole probabilistiche. Due eventi sono correlati quando sono frequentemente osservati insieme. Esempio: database di
DettagliEsercizi sull Association Analysis
Data Mining: Esercizi sull Association Analysis 1 Esercizi sull Association Analysis 1. Si consideri il mining di association rule da un dataset T di transazioni, rispetto a delle soglie minsup e minconf.
DettagliEsercizi vari. Alberto Montresor. 19 Agosto, 2014
Esercizi vari Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile saltare alle rispettive soluzioni
DettagliUniversità di Pisa A.A. 2004-2005
Università di Pisa A.A. 2004-2005 Analisi dei dati ed estrazione di conoscenza Corso di Laurea Specialistica in Informatica per l Economia e per l Azienda Tecniche di Data Mining Corsi di Laurea Specialistica
DettagliMemorizzazione di una relazione
Heap file File ordinati Indici o Hash o B+-tree Costo delle operazioni algebriche Simboli: NP: numero di pagine NR: numero record LP: lunghezza pagina LR: lunghezza record Memorizzazione di una relazione
DettagliInformatica 3. Informatica 3. LEZIONE 21: Ricerca su liste e tecniche di hashing. Lezione 21 - Modulo 1. Introduzione (1) Introduzione (2) Ricerca:
Informatica 3 Informatica 3 LEZIONE 21: Ricerca su liste e tecniche di hashing Modulo 1: Algoritmi sequenziali e basati su liste Modulo 2: Hashing Lezione 21 - Modulo 1 Algoritmi sequenziali e basati su
DettagliIngegneria della Conoscenza e Sistemi Esperti Lezione 2: Apprendimento non supervisionato
Ingegneria della Conoscenza e Sistemi Esperti Lezione 2: Apprendimento non supervisionato Dipartimento di Elettronica e Informazione Politecnico di Milano Apprendimento non supervisionato Dati un insieme
DettagliFILE E INDICI Architettura DBMS
FILE E INDICI Architettura DBMS Giorgio Giacinto 2010 Database 2 Dati su dispositivi di memorizzazione esterni! Dischi! si può leggere qualunque pagina a costo medio fisso! Nastri! si possono leggere le
DettagliFondamenti di Informatica. Algoritmi di Ricerca e di Ordinamento
Fondamenti di Informatica Algoritmi di Ricerca e di Ordinamento 1 Ricerca in una sequenza di elementi Data una sequenza di elementi, occorre verificare se un elemento fa parte della sequenza oppure l elemento
DettagliRegole di associazione
M B G Regole di associazione ATA MINING: REGOLE I ASSOCIAZIONE - 1 Regole di associazione Ricerca di correlazioni in una collezione di dati strumento efficace per analizzare i dati senza conoscenza a priori
DettagliArchitetture Evolute nei Sistemi Informativi. architetture evolute 1
Architetture Evolute nei Sistemi Informativi architetture evolute 1 Scalabilità delle Applicazioni carico: insieme di tutte le applicazioni (query) scalabilità: abilità di conservare prestazioni elevate
Dettaglin n 1 n = > Il calcolo del fattoriale La funzione fattoriale, molto usata nel calcolo combinatorio, è così definita
Il calcolo del fattoriale La funzione fattoriale, molto usata nel calcolo combinatorio, è così definita n! = 1 n( n 1)! se se n n = > 0 0 dove n è un numero intero non negativo Il calcolo del fattoriale
DettagliGestione ed Elaborazione di Grandi Moli di Dati. Scritto 29/08/2006: SOLUZIONI
Gestione ed Elaborazione di Grandi Moli di Dati Scritto 29/08/2006: SOLUZIONI Gest. ed Elab. di Grandi Moli di Dati: Scritto 29/08/2006 Problema. Con riferimento ai sistemi di dischi RAID a. Definire le
DettagliGARA5 SECONDARIA DI SECONDO GRADO INDIVIDUALE
GARA5 SECONDARIA DI SECONDO GRADO INDIVIDUALE ESERCIZIO 1 PROBLEMA La tabella che segue descrive le attività di un progetto (indicate rispettivamente con le sigle A1, A2,...), riportando per ciascuna di
DettagliLaboratorio - Programmazione
Laboratorio - Programmazione Angelo Di Iorio angelo.diiorio@unibo.it Progetto L obiettivo del progetto è realizzare un applicazione PHP da linea di comando che raccoglie dati sui terremoti avvenuti in
DettagliBasi di Dati Parallele
Basi di Dati Parallele Capitolo 3 Basi di dati Architetture e linee di evoluzione P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone 1 Scalabilità delle applicazioni Carico insieme di tutte le
DettagliImplementazione della ricerca dell informazione in documenti non strutturati
Parte 5 Implementazione della ricerca dell informazione in documenti non strutturati M. Diligenti Sistemi Gestione Documentale 1 Vector-Space o modello booleano?! Modello vector-space permette il ranking
DettagliArray ( vettore/matrice Un dato strutturato. indice Accesso diretto
Array (vettore/matrice) Un dato strutturato. Un insieme di variabili tutte dello stesso tipo identificate con un nome comune. Uno specifico elemento è referenziato tramite un indice (funzione di accesso)
Dettaglicome segue: data una collezione C di elementi e una un elemento che verifica la proprietà P
Problemi di Ricerca Carla Binucci e Walter Didimo Il problema della Ricerca In generale, il Problema della Ricerca è definito come segue: data una collezione C di elementi e una proprietà P, determinare
DettagliGeometria analitica di base. Equazioni di primo grado nel piano cartesiano Funzioni quadratiche Funzioni a tratti Funzioni di proporzionalità inversa
Equazioni di primo grado nel piano cartesiano Funzioni quadratiche Funzioni a tratti Funzioni di proporzionalità inversa Equazioni di primo grado nel piano cartesiano Risoluzione grafica di un equazione
DettagliAlgoritmi di rimpiazzamento. Algoritmo con rimpiazzamento casuale
Algoritmi di rimpiazzamento Algoritmo con rimpiazzamento casuale In caso di miss con associativita superiore ad 1 il controllore deve determinare quale gruppo deve essere rimpiazzato con il nuovo gruppo
DettagliCompito di Informatica Grafica 2 appello 02/02/2009. Nome e Cognome Numero di Matricola
Nome e Cognome Numero di Matricola Esercizio 1 (12 punti) Si consideri la base di dati di un ospedale riportata in figura. Ogni Operatore ha una Qualifica che può essere o medico o infermiere. Ogni operatore
DettagliUNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA. Algoritmi
UNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA Algoritmi Algoritmi classici Alcuni problemi si presentano con elevata frequenza e sono stati ampiamente studiati Ricerca di un elemento in un vettore
DettagliSilvia Rossi. Algoritmi di Ordinamento. Informatica. Lezione n. Parole chiave: Bubble Sort Selection Sort. Corso di Laurea:
Silvia Rossi Algoritmi di Ordinamento 0 Lezione n. Parole chiave: Bubble Sort Selection Sort Corso di Laurea: Informatica Insegnamento: Programmazione I Email Docente: srossi@na.infn.it A.A. 00-0 Ordinamento
DettagliRegole di Associazione: algoritmi
Regole di Associazione: algoritmi di Rosa Meo Regole di Associazione Originariamente proposte nella market basket analysis per rappresentare le regolarità di comportamento nell acquisto dei clienti. R.Agrawal,
DettagliScoperta di sequenze di comportamento
Scoperta di sequenze di comportamento Vincenzo Antonio Manganaro vincenzomang@virgilio.it, www.statistica.too.it Indice 1 Definizione del problema ed esempi. 1 2 Scoperta di sequenze. 5 3 Algoritmi per
DettagliEsercitazione su Instruction Level Parallelism Salvatore Orlando
Esercitazione su Instruction Level Parallelism Salvatore Orlando Arch. Elab. - S. Orlando 1 Pipeline con e senza forwarding Si considerino due processori MIPS (processore A e B) entrambi con pipeline a
DettagliAltrimenti, il M.C.D. di a e b è anche divisore di r (e.g. a=15,b=6,r=3 che è il M.C.D.)
Elaboratore Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni sui dati digitale l informazione è rappresentata in forma numerica
DettagliINDICI PER FILE. Accesso secondario. Strutture ausiliarie di accesso
INDICI PER FILE Strutture ausiliarie di accesso 2 Accesso secondario Diamo per scontato che esista già un file con una certa organizzazione primaria con dati non ordinati, ordinati o organizzati secondo
Dettagli5.1 Metodo Branch and Bound
5. Metodo Branch and Bound Consideriamo un generico problema di ottimizzazione min{ c(x) : x X } Idea: Ricondurre la risoluzione di un problema difficile a quella di sottoproblemi più semplici effettuando
DettagliAlgoritmi di Ricerca. Esempi di programmi Java. Prof. Angela Bonifati
Passaggio dei parametri in Java Nel seguente esempio public class parametri2 public static void main(string args[]) int x = 1; int y; double d[] = new double[2]; d[0] = 25; y= metodo1(d, x); System.out.println("Il
Dettagli3.3 FORMULAZIONE DEL MODELLO E CONDIZIONI DI
3.3 FORMULAZIONE DEL MODELLO E CONDIZIONI DI ESISTENZA DI UN PUNTO DI OTTIMO VINCOLATO Il problema di ottimizzazione vincolata introdotto nel paragrafo precedente può essere formulato nel modo seguente:
DettagliTowards Robust Indexing for Ranked Queries
aa 09/10 Towards Robust Indexing for Ranked Queries Gruppo 5 Candeloro D. Orlando M. Pedone A. Punto di partenza Pre-analisi + Indicizzazione Top-K Query efficienti Metodi di indicizzazione esistenti influenzabili
DettagliRegole di Associazione
Metodologie per Sistemi Intelligenti Regole di Associazione Prof. Pier Luca Lanzi Laurea in Ingegneria Informatica Politecnico di Milano Polo regionale di Como Esempio Esempio Regole di Associazione Scopo
DettagliArchitetture data-flow
Architetture data-flow Le architetture che abbiamo visto finora sono dette architetture control flow. Ciò sta ad indicare che il flusso dell elaborazione è dettato dall ordine con cui le varie istruzioni
DettagliAlgoritmi. Andrea Passerini Informatica. Algoritmi
Andrea Passerini passerini@disi.unitn.it Informatica Elaboratore Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni sui dati digitale
DettagliCOMPLESSITÀ COMPUTAZIONALE. Fondamenti di Informatica A - Massimo Bertozzi
COMPLESSITÀ COMPUTAZIONALE Tipi di complessità Consideriamo l'analisi della complessità di un programma da due punti di vista: spazio tempo Complessità Spaziale Lo spazio utilizzato da un programma può
DettagliMatroidi, algoritmi greedy e teorema di Rado
Matroidi, algoritmi greedy e teorema di Rado per il corso di Laboratorio di Algoritmi e Ricerca Operativa Dott. Alberto Leporati / Prof.ssa Enza Messina Dipartimento di Informatica, Sistemistica e Comunicazione
DettagliSistemi Operativi 1. Mattia Monga. a.a. 2008/09. Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia
1 Mattia Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it monoprogrammati multiprogrammati a.a. 2008/09 1 c 2009 M.. Creative Commons Attribuzione-Condividi
DettagliSistemi Operativi. Bruschi Martignoni Monga. Gestione della memoria. Sistemi multiprogrammati. Partizioni fisse Partizioni variabili Paginazione
1 Mattia Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it monoprogrammati multiprogrammati Lezione XXXIII: monoprogrammati multiprogrammati a.a. 2008/09
DettagliSistemi Operativi. Bruschi Martignoni Monga. File system Astrazioni utente Metadati Tecniche implementative. Sistemi Operativi
1 Mattia Lezione XXX: Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2008/09 1 c 2009 M.. Creative Commons Attribuzione-Condividi allo stesso modo
DettagliOrdinamento di una lista: bubble-sort
Ordinamento di una lista: bubble-sort L idea è di far galleggiare il minimo della lista nelle prima posizione Riduco la parte di lista da considerare, escludendo le prime posizioni già ordinate Ordinamento:
DettagliAlgoritmi e Strutture Dati Geometria Computazionale. Daniele Loiacono
Algoritmi e Strutture Dati Geometria Computazionale Riferimenti 2 T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein Introduction to Algorithms, Second Edition Queste trasparenze sono disponibili su http://dei.polimi.it/upload/loiacono
DettagliProgetto Matematica in Rete - Insiemi - Insiemi
Insiemi Il concetto di insieme è molto importante in matematica. Cominciamo con lo stabilire cos è un insieme in senso matematico: un raggruppamento di oggetti è un insieme se si può stabilire in modo
DettagliPASCAL: I VETTORI TRATTO DA CAMAGNI-NIKOLASSY, CORSO DI INFORMATICA, VOL. 1, HOEPLI. Informatica
PASCAL: I VETTORI TRATTO DA CAMAGNI-NIKOLASSY, CORSO DI INFORMATICA, VOL. 1, HOEPLI Informatica I dati strutturati: gli array I vettori (o Array) Fino a ora abbiamo memorizzato le informazioni (valori)
Dettagliin termini informali: un algoritmo è una sequenza ordinata di operazioni che risolve un problema specifico
Click to edit Algoritmo Master title style algoritmo: un insieme ordinato di operazioni non ambigue ed effettivamente computabili che, quando eseguito, produce un risultato e si arresta in un tempo finito
DettagliFONDAMENTI DI INFORMATICA. Prof. Alfredo Accattatis Prof. Venturino Taggi
FONDAMENTI DI INFORMATICA Prof. Alfredo Accattatis Prof. Venturino Taggi accattatis@ing.uniroma2.it taggi@ing.uniroma2.it 2 Fondamenti di Informatica 2015/16 V.Taggi taggi@ing.uniroma2.it Algoritmi di
DettagliLaboratorio di Architettura degli Elaboratori LabArch 2006 Secondo Quadimestre, a.a Docente: H. Muccini
[http://www.di.univaq.it/muccini/labarch] Laboratorio di Architettura degli Elaboratori LabArch 2006 Secondo Quadimestre, a.a. 2005-2006 Docente: H. Muccini Lecture 2: Prime Istruzioni -Concetti Fondamentali
DettagliAssegnazione di una variabile
Assegnazione di una variabile Per scrivere un valore dentro una variabile si usa l operatore di assegnazione, che è rappresentato dal simbolo =. Quindi, se scrivo int a; a = 12; assegno alla variabile
DettagliInsiemi 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
DettagliIndice Prefazione Funzionalit `a e architettura dei DBMS La gestione della memoria permanente e del buffer Organizzazioni seriale e sequenziale
Prefazione XI 1 Funzionalità e architettura dei DBMS 1 1.1 I DBMS............................... 1 1.2 Architettura dei DBMS....................... 3 1.3 Il sistema JRS............................ 5 1.4
DettagliCriteri da tenere a mente
2 Alcune considerazioni sul progetto di soluzioni software Criteri da tenere a mente Lo stile di programmazione è importante leggibilità (commenti / nomi significativi di variabili / indentazioni /...)
DettagliAlgoritmi 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
DettagliDatabases. Architettura di un DBMS: Struttura ad indice per i files, B + -Trees
Databases Architettura di un DBMS: Struttura ad indice per i files, B + -Trees Indici Un indice consiste di coppie e supporta l efficiente recupero di tutte le etichette con chiave
DettagliStudio degli algoritmi
COMPLESSITÀ COMPUTAZIONALE DEGLI ALGORITMI Fondamenti di Informatica a.a.2006/07 Prof. V.L. Plantamura Dott.ssa A. Angelini Studio degli algoritmi Dato un problema P, le problematiche riguardano: Sintesi
DettagliAlgoritmi di ordinamento
Algoritmi di ordinamento Scopo di questa esercitazione: Comprendere la complessità del problema ordinamento cerchiamo di valutare il costo di una soluzione (confrontandola con un altra ) Modifiche al codice
DettagliAlgoritmi. Andrea Passerini Conoscenze informatiche e relazionali Corso di laurea in Scienze dell Ingegneria Edile
Algoritmi Andrea Passerini passerini@dsi.unifi.it Conoscenze informatiche e relazionali Corso di laurea in Scienze dell Ingegneria Edile Elaboratore Un elaboratore o computer è una macchina digitale, elettronica,
DettagliEsercitazione 5 Algorithmi e Strutture Dati (Informatica) A.A 2015/2016
Esercitazione 5 Algorithmi e Strutture Dati (Informatica) A.A 2015/2016 Tong Liu April 7, 2016 Liste trabocco (Separate Chaining) Esercizio 1 [Libro 7.5] Un dizionario è realizzato con liste di trabocco.
DettagliProgrammazione Concorrente, Parallela e su Cloud
2019 Programmazione Concorrente, Parallela e su Cloud Algoritmi per memoria condivisa Carmine Spagnuolo, Ph.D. Finding the Minimum in O(logn) Time Algoritmo sequenziale, T (n) = n 1 = O(n): 1: m := a[1];
DettagliSistemi Operativi FILE SYSTEM : INTERFACCIA. D. Talia - UNICAL. Sistemi Operativi 8.1
FILE SYSTEM : INTERFACCIA 8.1 Interfaccia del File System Concetto di File Metodi di Accesso Struttura delle Directory Montaggio del File System Condivisione di File Protezione 8.2 Concetto di File File
DettagliCOMPLESSITÀ COMPUTAZIONALE DEGLI ALGORITMI
COMPLESSITÀ COMPUTAZIONALE DEGLI ALGORITMI Fondamenti di Informatica a.a.200.2005/06 Prof. V.L. Plantamura Dott.ssa A. Angelini Confronto di algoritmi Uno stesso problema può essere risolto in modi diversi,
Dettagli2.3 Cammini ottimi. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
. Cammini ottimi E. Amaldi Fondamenti di R.O. Politecnico di Milano .. Cammini minimi e algoritmo di Dijkstra Dato un grafo orientato G = (N, A) con una funzione di costo c : A c ij R e due nodi s e t,
DettagliLaboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007
Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007 Dott.Davide Di Ruscio Dipartimento di Informatica Università degli Studi di L Aquila Lezione del 07/02/07 Nota Questi lucidi sono tratti
DettagliI Componenti del processo decisionale 7
Indice Introduzione 1 I Componenti del processo decisionale 7 1 Business intelligence 9 1.1 Decisioni efficaci e tempestive........ 9 1.2 Dati, informazioni e conoscenza....... 12 1.3 Ruolo dei modelli
DettagliStudio di tecniche di accesso ai dati dell esperimento CMS a LHC: il caso dell axigluone
Studio di tecniche di accesso ai dati dell esperimento CMS a LHC: il caso dell axigluone Relatore: Prof. Luciano M. Barone Candidato: Giovanni Carta 1 Il Large Hadron Collider collisore pp, anello lungo
Dettagli3.4 Metodo di Branch and Bound
3.4 Metodo di Branch and Bound Consideriamo un generico problema di Ottimizzazione Discreta dove X è la regione ammissibile. (P ) z = max{c(x) : x X} Metodologia generale di enumerazione implicita (Land
DettagliModello Booleano e Liste Inverse. M. Diligenti Sistemi Gestione Documentale 1
Modello Booleano e Liste Inverse M. Diligenti Sistemi Gestione Documentale 1 Modelli per la ricerca Modello booleano Permette di fare le ricerche in modo efficiente Vector-space Permette di ordinare i
DettagliLABORATORIO DI ALGORITMI E STRUTTURE DATI A-L. Ingegneria e scienze informatiche Cesena A.A: 2016/2017 Docente: Greta Sasso
LABORATORIO DI ALGORITMI E STRUTTURE DATI A-L Ingegneria e scienze informatiche Cesena A.A: 2016/2017 Docente: Greta Sasso Minimum Spanning Tree Albero di copertura (Spanning Tree): un albero di copertura
DettagliPiano cartesiano e Retta
Piano cartesiano e Retta 1 Piano cartesiano e Retta 1. Richiami sul piano cartesiano 2. Richiami sulla distanza tra due punti 3. Richiami punto medio di un segmento 4. La Retta (funzione lineare) 5. L
DettagliCorso integrato di Sistemi di Elaborazione. Modulo I. Prof. Crescenzio Gallo.
Corso integrato di Sistemi di Elaborazione odulo I Prof. Crescenzio Gallo crescenzio.gallo@unifg.it Il Processore (CPU) 2 rchitettura del processore CPU Unità di Controllo Unità ritmetica Logica egistri
DettagliSistemi operativi e distribuiti
Sistemi operativi e distribuiti File System Il concetto di file Unospaziologicocontinuo per la memorizzazione dei dati Tipi di dati memorizzabili in un file Codice eseguibile Dati generici numeri caratteri
DettagliEsercitazione su Instruction Level Parallelism
Esercitazione su Instruction Level Parallelism Salvatore Orlando Arch. Elab. - S. Orlando 1 Pipeline con e senza forwarding Si considerino due processori MIPS (processore A e B) entrambi con pipeline a
DettagliProgetto e analisi di algoritmi
Progetto e analisi di algoritmi Roberto Cordone DTI - Università degli Studi di Milano Polo Didattico e di Ricerca di Crema Tel. 0373 / 898089 E-mail: cordone@dti.unimi.it Ricevimento: su appuntamento
DettagliLaboratorio di algoritmi e strutture dati
Laboratorio di algoritmi e strutture dati Docente: Violetta Lonati mercoledì 15 novemb017 L esercitazione di oggi prevede di utilizzare gli alberi binari e in particolare gli alberi binari di ricerca.
DettagliEsercizi di Programmazione Lineare
Esercizi di Programmazione Lineare 1 grafica Si consideri il seguente problema di programmazione lineare: max 3x 1 + 2x 2 s.t. + 2x 1 + x 2 4 2x 1 + x 2 2 + x 1 x 2 1 x 1, x 2 0 a) Risolvere il problema
DettagliPOLITECNICO DI MILANO ESAME DI INFORMATICA 3 Prof.ssa Sara Comai Laurea On Line Anno Accademico 2003/2004 II Prova in itinere
POLITECNICO DI MILANO ESAME DI INFORMATICA Prof.ssa Sara Comai Laurea On Line Anno Accademico 00/00 II Prova in itinere È sconsigliato l uso di libri e appunti. Salvare il file con nome: COGNOME.cpp, dove
DettagliMisura della performance di ciascun modello: tasso di errore sul test set
Confronto fra modelli di apprendimento supervisionato Dati due modelli supervisionati M 1 e M costruiti con lo stesso training set Misura della performance di ciascun modello: tasso di errore sul test
DettagliBASI DI DATI DISTRIBUITE
BASI DI DATI DISTRIBUITE Definizione 2 Un sistema distribuito è costituito da un insieme di nodi (o di siti) di elaborazione una rete dati che connette fra loro i nodi Obiettivo: far cooperare i nodi per
DettagliUniversità degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso
Obiettivi Di seguito vengono riportate una serie di domande che possono essere poste durante la prova formale del corso. Le seguenti domande non sono da ritenersi esaustive ma esemplificative. 1. Architettura
DettagliUniversità di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2016-17 Pietro Frasca Lezione 12 Martedì 22-11-2016 Partizioni variabili Un miglioramento dell uso
DettagliProgetto del processore e supporto del processore al SO (interruzioni eccezioni) Salvatore Orlando
Progetto del processore e supporto del processore al SO (interruzioni eccezioni) Salvatore Orlando Arch. Elab. - S. Orlando 1 Eccezioni e interruzioni Il progetto del controllo del processore si complica
DettagliPartizioni intere. =! i# P. Es: Dato {38, 17, 52, 61, 21, 88, 25} possiamo rispondere positivamente al quesito poiché
Partizioni intere PARTIZIONAMENTO: Dato un insieme di n interi non negativi rappresentati in binario, trovare un sottoinsieme P! {1,2,..., n } tale che! i"p a i =! i# P a i Es: Dato {38, 17, 52, 61, 21,
DettagliMandelbrot. Mandelbrot set. Progetto del corso di Calcolo Parallelo AA Salvatore Orlando. L insieme di Mandelbrot è un frattale
Mandelbrot Progetto del corso di Calcolo Parallelo AA 2003-04 Salvatore Orlando 1 Mandelbrot set L insieme di Mandelbrot è un frattale I Frattali sono oggetti con caratteristiche di self-similarity quando
DettagliSistemi Operativi (modulo di Informatica II) L interfaccia del file system
Sistemi Operativi (modulo di Informatica II) L interfaccia del file system Patrizia Scandurra Università degli Studi di Bergamo a.a. 2009-10 Sommario Il concetto di file Metodi di accesso Struttura delle
DettagliLista di esercizi 11 maggio 2016
Lista di esercizi 11 maggio 2016 1. Determinare il numero di sequenze binarie di lunghezza n che contengano almeno una coppia di 0 consecutivi. Soluzione. Potrebbe essere utile un programma di calcolo
DettagliHackerando la Macchina Ridotta
La macchina ridotta La Routine di Moltiplicazione Una moltiplicazione che non voleva funzionare 27 novembre 2008 La macchina ridotta La Routine di Moltiplicazione Table of contents 1 La macchina ridotta
DettagliBasi di dati II, primo modulo 24 giugno 2011 Compito breve
Basi di dati II, primo modulo 24 giugno 2011 Compito breve Cognome Nome Matricola Domanda 1 Come noto, si stanno diffondendo applicazioni nelle quali è necessaria una grande scalabilità e che vengono quindi
DettagliCapitolo 8 - Silberschatz
Gestione della memoria centrale Capitolo 8 - Silberschatz Background Un programma in genere risiede su disco in forma di un file binario eseguibile e deve essere portato (dal disco) in memoria e inserito
DettagliProgramma svolto di INFORMATICA. Classe 3M - indirizzo MERCURIO A.S. 2010/2011
ISTITUTO TECNICO COMMERCIALE N. DELL ANDRO - Santeramo in Colle (BA) Programma svolto di INFORMATICA Classe 3M - indirizzo MERCURIO A.S. 2010/2011 Proff. Rosalia Barbara Schiavarelli, Antonio Antonicelli
DettagliModello Booleano e Liste Inverse SGD / BDM 1
Modello Booleano e Liste Inverse SGD / BDM 1 Modelli per la ricerca Modello booleano Permette di fare le ricerche in modo efficiente Vector-space Permette di ordinare i risultati in modo accurato SGD /
Dettagli