Laboratorio di Bioimmagini A.A

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Laboratorio di Bioimmagini A.A"

Transcript

1 Laboratorio di Bioimmagini A.A Le immagini da utilizzare nei seguenti esercizi ed il codice Matlab delle soluzioni sono scaricabili da: Esercizio 2:soluzione Per creare la funzione di clustering, conviene dividere per prima cosa il problema in sottoproblemi più semplici, per poi combinarli ed ottenere l algoritmo completo. In particolare, vediamo che è necessario, ad ogni passo iterativo, procedere al calcolo di: 1. distanza d() di ogni dato dalle medie delle classi, date le medie 2. pesi w di ogni elemento, per ogni classe, date le distanze d() 3. i centri mu aggiornati, dati i pesi 4. la funzione obiettivo, dati i pesi e le distanze Scriveremo dunque 4 funzioni che calcolano tali quantità, ricordando che i dati sono M oggetti appartenenti a R N, e dunque verranno rappresentati in una matrice MxN, i centri μ sono K oggetti in R N e verranno rappresentati in una matrice KxN, mentre le distanze ed i pesi sono delle misure di ogni dato rispetto ad una classe, e quindi verranno rappresentati in matrici MxK (K valori per ognuno degli M dati). La prima funzione calcola la distanza come norma Euclidea di ogni dato da tutte le medie. Ci sarà dunque bisogno di un ciclo for che scorra le classi, e per ogni classe k ε [1,K] calcola la distanza degli elementi nella matrice MxN di dati, e li posiziona nella colonna k-esima della matrice MxK dist. Per evitare un doppio ciclo for (sarebbe necessario scorrere le K classi e gli M oggetti), si sfruttano le operazioni aritmetiche elemento per elemento di Matlab tra matrici con dimensioni uguali. Dal momento che ad ogni elemento N-dimensionale della matrice data devo sottrarre lo stesso vettore di medie, questa operazione può essere fatta in un colpo solo, creando una matrice che in ogni riga ha lo stesso vettore media, tramite l operazione: mk=ones(m,1)*mu(ctclass,:); in cui si ottiene che mk sia una matrice MxN, in cui ognuno delle righe N-dimensionali contiene i valori del vettore 1xN mu(ctclass,:).

2 function dist=fc_dist(data,mu,dbf) %% dist is MxK K=size(mu,1); N=size(mu,2); M=size(data,1); for ctclass=1:k, mk=ones(m,1)*mu(ctclass,:); dist(:,ctclass)=sqrt(sum((data-mk).^2,2)); end; A questo punto possiamo passare a creare la funzione che calcola i pesi w a partire dalle distanze calcolate con la funzione precedenti e salvate in una matrice dist. Dal momento che i pesi sono l inverso di una distanza (normalizzata), potrebbe essere possibile incappare in una divisione per zero, che creerebbe il problema di gestire valori infiniti (Inf) oppure not a number (nan), che portrebbero al collasso di una media sopra ad uno dei dati. Per evitare questi casi, scegliamo la facile soluzione di aggiungere un valore piccolo ma non nullo a tutti gli elementi della matrice dist function w=fc_w(dist,dbf) %% dist is MxK K=size(dist,2); M=size(dist,1); nfact=sum(dist,2); w=(nfact*ones(1,k))./(dist+1e-6);

3 Il calcolo delle medie è immediato, ricordando che i pesi vanno normalizzati per ottenere delle medie sensate. Il parametro esp passato alla funzione modula l influenza dei dati nel calcolo della media a seconda della loro distanza. Più è alto il valore di tale parametro, meno i dati lontani dalla media peseranno nel calcolo, e quindi maggiormente i risultati saranno influenzati dalle condizioni iniziali, mentre al limite di esp=0, i centri collasserrano verso la media globale dei dati. function mu=fc_mu(data,w,esp, dbf) K=size(w,2); N=size(data,2); M=size(data,1); for ctclass=1:k, wk=w(:,ctclass).^esp; wk=wk/sum(wk); wk=wk*ones(1,n); mu(ctclass,:)=sum(data.*wk); end; Infine calcoliamo la funzione obiettivo sfruttando l operatore di vettorizzazione di Matlab (:): function obj=fc_obj(w, dist, esp, dbf) %% dist is MxK obj=sum(w(:).^esp.*dist(:));

4 Ora dobbiamo mettere assieme le funzioni sviluppate per creare l algoritmo iterativo di clustering, provvedendo anche ad una funzione di inizializzazione: function [mu,obj]=fc_init(data,class,esp,dbf) K=class; M=size(data,1); N=size(data,2); w=rand(m,k); w=w./(sum(w,2)*ones(1,k)); mu=fc_mu(data,w,esp, dbf); dist=fc_dist(data,mu,dbf); obj=fc_obj(w, dist, esp, dbf); function [mu,w]=fc(data,class, esp, tol, maxiter, dbf) %% dist is MxK [mu,objnew]=fc_init(data,class,esp,dbf); ec=1; iter=1; whil e(ec & iter<maxiter) end obj=objnew; dist=fc_dist(data,mu,dbf); w=fc_w(dist,dbf); mu=fc_mu(data,w,esp, dbf); obj=fc_obj(w, dist, esp, dbf); iter=iter+1; ec=abs(obj-objnew)>tol;

5 Per verificare il funzionamento dell algoritmo, possiamo scrivere un piccolo script che crei dei dati sintetici, inizializzi i parametri necessari all algoritmo, lanci il clustering e visualizzi i risultati: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Questo è il programma principale per testare l'algoritmo fi fuzzy %% clustering %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Parametri %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% dbf=0; esp=2; %% esponente per i pesi w tol=1e-4; %% minima differenza fra il valore della funzione obiettivo in due iterazioni successive maxiter=200; %% numero massimo di iterazioni %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Generazione dei dati simulati %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% class=3; %% numero di classi ndata=50; %% numero di elementi per ogni classe N=2; %% dimensionalità dei dati data=randn(ndata,n)*2; data(end+1:end+ndata,:)=randn(ndata,n)*2-10; data(end+1:end+ndata,:)=randn(ndata,n)*2+10; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Clustering %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% [mu,w]=fc(data,class, esp, tol, maxiter, dbf); figure; plot(data(:,1),data(:,2),'.'); hold on plot(mu(:,1),mu(:,2),'*r'); Esercizio 3 E possibile caricare una immagine xiso, estrarne una regioni xroi di dimensione 51x51 attorno al punto [567,855], solo nel canale verde, e poi visualizzare la regione estratta con le seguenti istruzioni: xiso=im2double(imread('8766-6_iso.tiff')); xroi=xiso(855-25:855+25,567-25:567+25, 2); figure; imagesc(xroi); colormap(gray); Ottenendo la visualizzazione di:

6 Possiamo utilizzare i dato sul livello di grigio direttamente dalle informazione in xroi applicando la funzione costruita nell Es. 1. dbf=0; esp=2; %% esponente per i pesi w tol=1e-4; %% minima differenza fra il valore della funzione obiettivo in due iterazioni successive maxiter=500; %% numero massimo di iterazioni [mu,w]=fc(xroi(:),2, esp, tol, maxiter, dbf); Ottenendo come risultato che le medie delle due classi sono stimate μ=[0.2510,0.4039]. Per visualizzare il risultato possiamo vedere l istogramma dei livelli di grigio in xroi, a cui sovrapponiamo due linee dove sono le medie dei cluster: Se poniamo una soglia a metà dei due centri di cluster, otteniamo una segmentazione dell immagine basata sulla stima dei clusters sui livelli di grigio. Dal momento che l idea finale è di identificare la parte di vaso nell immagine, sceglieremo di mettere a 1 (pixel selezionati), la parte dell immagine con livelli di grigio inferiore alla soglia trovata: th=0.5*sum(mu); xseg=xroi<th; imagesc(xseg); colormap(gray);

7 Se applicassimo la trasformata di Hough tramite la funzione hough() oppure la funzione radon()di Matlab direttamente su questa immagine in bianco e nero, otterremo un numero di linee possibili molto elevato, tutt con un numero di pixel votanti simile, cosa che non permette una buona identificazione della linea centrale del vaso e della sua direzione: theta=0:180; [R, theta, rho] = hough(xseg); imshow(r,[],'xdata',theta,'ydata',rho,'initialmagnification','fit') colormap(hot), colorbar Per ottenere una miglior localizzazione della linea che approssima il centro del vaso e la sua direzione, prima della trasformata di Hough si può procedere ad un thinning dell immagine: xskel=bwmorph(xseg,'thin','inf'); imagesc(xskel) colormap(gray) [R, theta, rho] = hough(xskel); imshow(r,[],'xdata',theta,'ydata',rho,'initialmagnification','fit') colormap(hot), colorbar

8 Si ottiene che il massimo della trasformata di Hough si trova alle coordinate [88,77], corrispondenti a ρ=17 e θ=-13, da cui la linea che si ottiene è: Se si volesse applicare invece il clustering a dati che contengano sia l informzione sul canale rosso, che quello sul canale verde, il clustering e la segmentazione che si otterrebbero sono i seguenti: xroir=xiso(855-25:855+25,567-25:567+25, 1); xroig=xiso(855-25:855+25,567-25:567+25, 2); data=[xroir(:),xroig(:)]; [mu,w]=fc(data,2, esp, tol, 500, dbf); plot(data(:,1),data(:,2),'.'); hold on plot(mu(:,1),mu(:,2),'*r');

9 th=mean(mu,2); xseg2=xroir<0.5 & xroi<0.1235; imagesc(xseg2); colormap(gray)

1. Si scriva una function Matlab che implementa il seguente metodo di punto fisso

1. Si scriva una function Matlab che implementa il seguente metodo di punto fisso Domanda 1 1. Si scriva una function Matlab che implementa il seguente metodo di punto fisso x n+1 = x n f(x n), n = 0, 1, 2,... K dove x 0 è il punto iniziale, f(x) = x 3 cos(x) e K è una costante assegnata.

Dettagli

Segmentazione di immagini in scala di grigio basata su clustering

Segmentazione di immagini in scala di grigio basata su clustering Segmentazione di immagini in scala di grigio basata su clustering Davide Anastasia, Nicola Cogotti 24 gennaio 06 1 Analisi del problema La segmentazione di immagini consiste nella suddivisione in un certo

Dettagli

Esercizi di autovalutazione - Matlab Metodi Numerici con Elementi di Programmazione A.A

Esercizi di autovalutazione - Matlab Metodi Numerici con Elementi di Programmazione A.A Esercizi di autovalutazione - Matlab Metodi Numerici con Elementi di Programmazione A.A. 2018-19 1. Scrivere la function Matlab myfun.m che valuti la funzione e la sua derivata in corrispondenza delle

Dettagli

UNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA. Matlab: esempi ed esercizi

UNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA. Matlab: esempi ed esercizi UNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA Matlab: esempi ed esercizi Sommario e obiettivi Sommario Esempi di implementazioni Matlab di semplici algoritmi Analisi di codici Matlab Obiettivi

Dettagli

Implementazione degli algoritmi.

Implementazione degli algoritmi. Implementazione degli algoritmi. 4.1. Introduzione. In questo capitolo sarà discussa l implementazione software per l ambiente MATLAB 6.1 che è stata fatta degli algoritmi di identificazione presentati

Dettagli

Argomento 13 Sistemi lineari

Argomento 13 Sistemi lineari Sistemi lineari: definizioni Argomento Sistemi lineari Un equazione nelle n incognite x,, x n della forma c x + + c n x n = b ove c,, c n sono numeri reali (detti coefficienti) e b è un numero reale (detto

Dettagli

Algoritmi stabili e instabili

Algoritmi stabili e instabili Algoritmi stabili e instabili Laboratorio di Calcolo Numerico 13 Marzo 2018 Vettori in MATLAB Finora abbiamo pensato alle variabili utilizzate come semplici valori numerici (variabili scalari). In realtà,

Dettagli

Matlab permette di disegnare facilmente dei grafici La prima cosa da fare è costruire una nuova figura :

Matlab permette di disegnare facilmente dei grafici La prima cosa da fare è costruire una nuova figura : Matlab permette di disegnare facilmente dei grafici La prima cosa da fare è costruire una nuova figura : figure() La funzione figure apre una nuova finestra In cui verrà inserito il disegno In molti casi,

Dettagli

Calcolo Numerico (CdS in Matematica) A.A. 2012/13

Calcolo Numerico (CdS in Matematica) A.A. 2012/13 Calcolo Numerico (CdS in Matematica) A.A. 2012/13 Esercitazione di Laboratorio sulla risoluzione di sistemi di equazioni lineari Parte 1. Fattorizzazione di matrici Scrivere una funzione Matlab che implementi

Dettagli

METODI ITERATIVI DI JACOBI E GAUSS-SEIDEL

METODI ITERATIVI DI JACOBI E GAUSS-SEIDEL 1. DESCRIZIONE DEL PROBLEMA Function file che implementa: L algoritmo di Jacobi o di Gauss Seidel per la risoluzione di un sistema lineare Ax=b con A sparsa (generata dall utente con il comando sparse).

Dettagli

1 1, { x1 2x 2 + x 3 = 0 2x 2 8x 3 = 1 x 1 x 4 = = 0

1 1, { x1 2x 2 + x 3 = 0 2x 2 8x 3 = 1 x 1 x 4 = = 0 a.a. 5-6 Esercizi. Sistemi lineari. Soluzioni.. Determinare quali delle quaterne, 3,, sono soluzioni del sistema di tre equazioni in 4 incognite { x x + x 3 = x 8x 3 = x x 4 =. Sol. Sostituendo ad x, x,

Dettagli

1 Esercizi Scrivere le equazioni ridotte rispetto a z della retta. x + 4y z + 1 = 0 r : x + 3y + 2z 3 = 0. x + 4y = z 1 x + 3y = 2z + 3

1 Esercizi Scrivere le equazioni ridotte rispetto a z della retta. x + 4y z + 1 = 0 r : x + 3y + 2z 3 = 0. x + 4y = z 1 x + 3y = 2z + 3 Esercizi 8. Scrivere le equazioni ridotte rispetto a z della retta x + 4y z + = 0 x + 3y + z 3 = 0 Soluzione. Risolviamo rispetto a z: x + 4y = z x + 3y = z + 3 x + 4y = z y = 3z 4 da cui x = z + 5 y =

Dettagli

1 Esercizi di Matlab. L operatore : permette di estrarre sottomatrici da una matrice assegnata. Vediamo alcuni esempi.

1 Esercizi di Matlab. L operatore : permette di estrarre sottomatrici da una matrice assegnata. Vediamo alcuni esempi. Esercizi di Matlab L operatore : permette di estrarre sottomatrici da una matrice assegnata. Vediamo alcuni esempi. Esempio Consideriamo la matrice A formata da n = righe e m = colonne M = 5 6 7 8. 9 0

Dettagli

Laboratorio di Segnali e Sistemi A. A. 2009/ Lezione 5: Immagini

Laboratorio di Segnali e Sistemi A. A. 2009/ Lezione 5: Immagini Laboratorio di Segnali e Sistemi A. A. 2009/ 2010 Lezione 5: Immagini 28 maggio 2010 Introduzione Immagini: risultato di un sistema di acquisizione/elaborazione/visualizzazione della radiazione EM visibile

Dettagli

Tesina Intelligenza Artificiale Maria Serena Ciaburri s A.A

Tesina Intelligenza Artificiale Maria Serena Ciaburri s A.A Tesina Intelligenza Artificiale Maria Serena Ciaburri s231745 A.A. 2016-2017 Lo scopo di questa tesina è quello di clusterizzare con l algoritmo K-Means i dati presenti nel dataset MNIST e di calcolare

Dettagli

METODI NUMERICI PER IL CONTROLLO

METODI NUMERICI PER IL CONTROLLO METODI NUMERICI PER IL CONTROLLO Relazione 4: Equazioni differenziali ESERCIZIO 1 Risolvere il problema ai valori iniziali 3 x& = 1x + t x(0) = 0 1t + 6t 3 1 nell intervallo [0 1] con passo h=0.1 usando

Dettagli

Laboratorio di Calcolo Numerico Laboratorio 3: Algoritmi stabili e instabili, Bisezione

Laboratorio di Calcolo Numerico Laboratorio 3: Algoritmi stabili e instabili, Bisezione Laboratorio di Calcolo Numerico Laboratorio 3: Algoritmi stabili e instabili, Bisezione Claudia Zoccarato E-mail: claudia.zoccarato@unipd.it Dispense: Moodle Dipartimento ICEA 22 Marzo 2017 Vettori in

Dettagli

1. Calcolo dell indice di condizionamento di una matrice

1. Calcolo dell indice di condizionamento di una matrice 1 Esercizi sul condizionamento con matlab laboratorio di Calcolo Scientifico per Geofisici Prof. A. Murli a.a. 2006/07 1. Calcolo dell indice di condizionamento di una matrice Determinare una function

Dettagli

LABORATORIO DI PROGRAMMAZIONE E CALCOLO Docente E. Carlini A.A. 2012/13 Foglio di esercizi N.8 con la collaborazione di Andrea Pugliese

LABORATORIO DI PROGRAMMAZIONE E CALCOLO Docente E. Carlini A.A. 2012/13 Foglio di esercizi N.8 con la collaborazione di Andrea Pugliese LABORATORIO DI PROGRAMMAZIONE E CALCOLO Docente E. Carlini A.A. / Foglio di esercizi N.8 con la collaborazione di Andrea Pugliese Dovete strutturare i programmi dei seguenti esercizi in funzioni ) (Metodo

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Fondamenti di Informatica Strutture Selettive, Iterative e Gestione File in MATLAB: Esercitazione 2 Prof. Arcangelo Castiglione A.A. 2016/17 Esercizio 1 Scrivere una funzione che prenda in input una matrice

Dettagli

Equazioni e sistemi non lineari

Equazioni e sistemi non lineari Equazioni e sistemi non lineari Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 Ricerca degli zeri di una funzione Problema e definizioni Metodo di Newton-Raphson

Dettagli

Note sull algoritmo di Gauss

Note sull algoritmo di Gauss Note sull algoritmo di Gauss 29 settembre 2009 Generalità Un sistema lineare di m equazioni in n incognite x,..., x n è un espressione del tipo: a x + a 2 x 2 + + a n x n = b a 2 x + a 22 x 2 + + a 2n

Dettagli

Equazioni e sistemi non lineari

Equazioni e sistemi non lineari Equazioni e sistemi non lineari Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 Ricerca degli zeri di una funzione Problema e definizioni Metodo di Newton-Raphson

Dettagli

Geometria BAER I canale Foglio esercizi 2

Geometria BAER I canale Foglio esercizi 2 Geometria BAER I canale Foglio esercizi Esercizio. ( ) Data la matrice, determinare tutte le matrici X Mat( ) tali che AX = 0 e tutte le matrici Y Mat( ) tali che Y 0. ( ) ( ) ( ) x y x + z y + w Soluzione:

Dettagli

Esercitazione 6: Metodi iterativi per sistemi lineari.

Esercitazione 6: Metodi iterativi per sistemi lineari. Esercitazione 6: Metodi iterativi per sistemi lineari. Richiami di Teoria Iterazione di Jacobi e Gauss Seidel. I metodi iterativi sono basati sul calcolo della soluzione x del sistema lineare Ax = b come

Dettagli

Per esempio, una matrice 4 4 triangolare alta ha la forma. 0 a. mentre una matrice di ordine 4 triangolare bassa è del tipo

Per esempio, una matrice 4 4 triangolare alta ha la forma. 0 a. mentre una matrice di ordine 4 triangolare bassa è del tipo Matrici triangolari Prima di esporre il metodo LU per la risoluzione di sistemi lineari, introduciamo la nozione di matrice triangolare Ci limiteremo al caso di matrici quadrate anche se l estensione a

Dettagli

Esercizi di geometria per Fisica / Fisica e Astrofisica

Esercizi di geometria per Fisica / Fisica e Astrofisica Esercizi di geometria per Fisica / Fisica e Astrofisica Foglio 3 - Soluzioni Esercizio. Stabilire se i seguenti sottoinsiemi di R 3 sono sottospazi vettoriali: (a) S = {(x y z) R 3 : x + y + z = }. (b)

Dettagli

Esercitazioni con GNU Octave

Esercitazioni con GNU Octave appendice A Esercitazioni con GNU Octave GNU Octave può essere scaricato dalla seguente pagina: https://www.gnu.org/software/octave/download.html L elenco dei concetti, delle funzioni e degli operatori

Dettagli

Prova di Laboratorio del [ Corso A-B di Programmazione (A.A. 2004/05) Esempio: Media Modalità di consegna:

Prova di Laboratorio del [ Corso A-B di Programmazione (A.A. 2004/05) Esempio: Media Modalità di consegna: Prova di Laboratorio del 12.1.2005 [durata 90 min.] Corso A-B di Programmazione (A.A. 2004/05) 1. Leggere da tastiera un insieme di numeri interi ed inserirli in un vettore A 2. Calcolare tramite una funzione

Dettagli

Laboratorio di Analisi Numerica Lezione 6

Laboratorio di Analisi Numerica Lezione 6 Laboratorio di Analisi Numerica Lezione 6 Gianna Del Corso Federico Poloni 6 Novembre 2012 Quantità di esercizi: in questa dispensa ci sono più esercizi di

Dettagli

QUANTIZZATORE VETTORIALE

QUANTIZZATORE VETTORIALE QUANTIZZATORE VETTORIALE Introduzione Nel campo delle reti neurali, la scelta del numero di nodi nascosti da usare per un determinato compito non è sempre semplice. Per tale scelta potrebbe venirci in

Dettagli

Elementi di Calcolo Scientifico per l Ingegneria A.A

Elementi di Calcolo Scientifico per l Ingegneria A.A Elementi di Calcolo Scientifico per l Ingegneria A.A. 2017-2018 Ottobre 2017 (2 16) Indice 1 2 3 4 Rappresentazione dei numeri reali nel calcolatore l insieme dei numeri reali, R, contiene un numero infinito

Dettagli

Esperienze di programmazione Lezione 3

Esperienze di programmazione Lezione 3 Esperienze di programmazione Lezione 3 Gianna Del Corso 13 Marzo 2015 1 Immagini Matlab rappresenta le immagini mediante una matrice A di interi di dimensione p q associando all

Dettagli

Sistemi lineari. a 11 x 1 + a 12 x a 1n x n = b 1 a 21 x 1 + a 22 x a 2n x n = b 2 : : : a m1 x 1 + a m2 x 2 +..

Sistemi lineari. a 11 x 1 + a 12 x a 1n x n = b 1 a 21 x 1 + a 22 x a 2n x n = b 2 : : : a m1 x 1 + a m2 x 2 +.. Sistemi lineari: definizioni Sistemi lineari Un equazione nelle n incognite x,, x n della forma c x + + c n x n = b ove c,, c n sono numeri reali (detti coefficienti) e b è un numero reale (detto termine

Dettagli

Introduzione al MATLAB c Parte 2

Introduzione al MATLAB c Parte 2 Introduzione al MATLAB c Parte 2 Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 24 settembre 2007 Outline 1 M-file di tipo Script e Function Script Function 2 Elementi di programmazione

Dettagli

Computazione per l interazione naturale: Richiami di algebra lineare

Computazione per l interazione naturale: Richiami di algebra lineare Computazione per l interazione naturale: Richiami di algebra lineare Corso di Interazione uomo-macchina II Prof. Giuseppe Boccignone Dipartimento di Informatica Università di Milano boccignone@di.unimi.it

Dettagli

Laboratorio computazionale numerico Lezione 8

Laboratorio computazionale numerico Lezione 8 Laboratorio computazionale numerico Lezione 8 f.poloni&sns.it 2008-12-03 1 Frattali di Newton In questa lezione cercheremo di disegnare i frattali che si ottengono disegnando i bacini di attrazione del

Dettagli

Algoritmo del simplesso

Algoritmo del simplesso Algoritmo del simplesso Ipotesi : si parte da una S.A.B. e dal tableau A=b in forma canonica. Si aggiunge una riga costituita dagli r j, j =,., n e da -z (valore, cambiato di segno, della f.o. nella s.a.b.)

Dettagli

Geometria epipolare. Filippo L.M. Milotta. Image Processing Lab Dipartimento di Matematica e Informatica Università degli Studi di Catania

Geometria epipolare. Filippo L.M. Milotta. Image Processing Lab Dipartimento di Matematica e Informatica Università degli Studi di Catania Filippo LM Milotta Image Processing Lab Dipartimento di Matematica e Informatica Università degli Studi di Catania milotta@dmiunictit 16 aprile 2015 Alcune considerazioni geometriche ci possono aiutare

Dettagli

Esercizi di autovalutazione - Matlab Metodi Numerici con Elementi di Programmazione A.A

Esercizi di autovalutazione - Matlab Metodi Numerici con Elementi di Programmazione A.A Esercizi di autovalutazione - Matlab Metodi Numerici con Elementi di Programmazione A.A. 2017-18 1. Scrivere la function Matlab myfun.m che calcoli la funzione e la sua derivata. La function deve ricevere

Dettagli

Anno 4 Matrice inversa

Anno 4 Matrice inversa Anno 4 Matrice inversa 1 Introduzione In questa lezione parleremo della matrice inversa di una matrice quadrata: definizione metodo per individuarla Al termine della lezione sarai in grado di: descrivere

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

Laboratorio di Analisi Numerica Lezione 6

Laboratorio di Analisi Numerica Lezione 6 Laboratorio di Analisi Numerica Lezione 6 Federico Poloni 22 dicembre 2010 Quantità di esercizi: in questa dispensa ci sono più esercizi di quanti uno studente medio riesce a farne durante

Dettagli

min 2x 1 +4x 2 2x 3 +2x 4 x 1 +4x 2 +2x 3 + x 4 =6 2x 1 + x 2 +2x 3 + x 5 =3 x 0.

min 2x 1 +4x 2 2x 3 +2x 4 x 1 +4x 2 +2x 3 + x 4 =6 2x 1 + x 2 +2x 3 + x 5 =3 x 0. 5 IL METODO DEL SIMPLESSO 6.4 IL METODO DEL SIMPLESSO In questo paragrafo sono riportati alcuni esercizi risolti sul metodo del simplesso. Alcuni sono risolti utilizzando la procedura di pivot per determinare,

Dettagli

Laboratorio 2. Calcolo simbolico, limiti e derivate. Metodo di Newton.

Laboratorio 2. Calcolo simbolico, limiti e derivate. Metodo di Newton. Anno Accademico 2007-2008 Corso di Analisi 1 per Ingegneria Elettronica Laboratorio 2 Calcolo simbolico, limiti e derivate. Metodo di Newton. 1 Introduzione al Toolbox simbolico Con le routines del Symbolic

Dettagli

Applicazioni eliminazione di Gauss

Applicazioni eliminazione di Gauss Applicazioni eliminazione di Gauss. Premessa Nel seguito supporremo sempre di applicare il metodo di eliminazione di Gauss allo scopo di trasformare la matrice del sistema Ax = b in una matrice triangolare

Dettagli

Autovalori ed autovettori di una matrice

Autovalori ed autovettori di una matrice Autovalori ed autovettori di una matrice Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 24 febbraio 2008 Outline 1 Definizioni di autovalori ed autovettori Autovalori ed autovettori

Dettagli

Computazione per l interazione naturale: clustering e riduzione di dimensionalità

Computazione per l interazione naturale: clustering e riduzione di dimensionalità Computazione per l interazione naturale: clustering e riduzione di dimensionalità Corso di Interazione uomo-macchina II Prof. Giuseppe Boccignone Dipartimento di Informatica Università di Milano boccignone@di.unimi.it

Dettagli

Strutture di controllo condizionali in Matlab

Strutture di controllo condizionali in Matlab Strutture di controllo condizionali in Matlab Informatica B Le strutture condizionali A cosa servono le strutture condizionali? %Inserimento dei parametri della parabola: y=ax^2+bx+c a = input( inserire

Dettagli

Informatica B

Informatica B Informatica B 2017-2018 Esercitazione IX Simulazione Prova d Esame Matlab Alessandro A. Nacci alessandro.nacci@polimi.it - www.alessandronacci.it 1 Esercizio 1 (6 punti) Scrivere una funzione non ricorsiva

Dettagli

Argomento 12 Matrici

Argomento 12 Matrici Argomento 2 Matrici 2 Vettori di R n eoperazioni I Vettore di R n : x =(x i ) i=n =(x i ) n i=,conx i R componenti di x I R n = spazio dei vettori reali a n componenti = spazio vettoriale reale n-dimensionale

Dettagli

Principi di Programmazione Prova del 10/6/2008 (ore 10.30)

Principi di Programmazione Prova del 10/6/2008 (ore 10.30) Prova del 10/6/2008 (ore 10.30) Scrivere (commentandole) le linee di codice Matlab per costruire i seguenti vettori (5x1): e il vettore di numeri complessi C tali che il singolo elemento c k ha come parte

Dettagli

x 1 x 2 x 3 x 5 La base iniziale è B 0 = I e risulta x B 0 = , x N 0 = Iterazione 0. Calcolo dei costi ridotti. γ 0 = c N 0 (N 0 ) T c B 0 =

x 1 x 2 x 3 x 5 La base iniziale è B 0 = I e risulta x B 0 = , x N 0 = Iterazione 0. Calcolo dei costi ridotti. γ 0 = c N 0 (N 0 ) T c B 0 = 56 IL METODO DEL SIMPLESSO 7.4 IL METODO DEL SIMPLESSO In questo paragrafo sono riportati alcuni esercizi risolti sul metodo del simplesso. Alcuni sono risolti utilizzando la procedura di pivot per determinare,

Dettagli

Programmare con MATLAB c Parte 5 Cicli: for e while

Programmare con MATLAB c Parte 5 Cicli: for e while Programmare con MATLAB c Parte 5 Cicli: for e while Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 La notazione due punti 2 Ciclo: for 3 Ciclo con controllo: while

Dettagli

Frazioni algebriche. Osserviamo che un espressione di questo tipo si ottiene talvolta quando ci si propone di ottenere il quoziente di due monomi.

Frazioni algebriche. Osserviamo che un espressione di questo tipo si ottiene talvolta quando ci si propone di ottenere il quoziente di due monomi. Frazioni algebriche 14 14.1 Definizione di frazione algebrica Diamo la seguente definizione: Definizione 14.1. Si definisce frazione algebrica un espressione del tipo A B polinomi. dove A e B sono Osserviamo

Dettagli

Algoritmi greedy. Gli algoritmi che risolvono problemi di ottimizzazione devono in genere operare una sequenza di scelte per arrivare alla soluzione

Algoritmi greedy. Gli algoritmi che risolvono problemi di ottimizzazione devono in genere operare una sequenza di scelte per arrivare alla soluzione Algoritmi greedy Gli algoritmi che risolvono problemi di ottimizzazione devono in genere operare una sequenza di scelte per arrivare alla soluzione Gli algoritmi greedy sono algoritmi basati sull idea

Dettagli

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 4 - Metodi di Newton e Punto fisso

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 4 - Metodi di Newton e Punto fisso Complementi di Matematica e Calcolo Numerico A.A. 2011-2012 Laboratorio 4 - Metodi di Newton e Punto fisso [1] Metodo di Newton Costruire una MATLAB FUNCTION che, dati dall utente: una funzione f una funzione

Dettagli

Sistemi Lineari. Elisabetta Colombo. Corso di Approfondimenti di Matematica per Biotecnologie, Anno Accademico

Sistemi Lineari. Elisabetta Colombo. Corso di Approfondimenti di Matematica per Biotecnologie, Anno Accademico Corso di Approfondimenti di Matematica per Biotecnologie, Anno Accademico 200-20 2 a di o.0 4 Capelli Rango o Caratterisca : definizioni a di o.0 Un equazione nelle n incognite x,..., x n della forma dove

Dettagli

Algoritmi per la soluzione di sistemi lineari

Algoritmi per la soluzione di sistemi lineari Capitolo Algoritmi per la soluzione di sistemi lineari. Sistemi triangolari inferiori Le matrici L con n righe ed n colonne ed elementi uguali a zero al di sopra della diagonale principale: l, 0... 0.

Dettagli

Università degli Studi di Ferrara

Università degli Studi di Ferrara Università degli Studi di Ferrara Corso di Laurea in Matematica - A.A. 2018 2019 Programmazione Lezione 19 Controllo di Flusso in MATLAB Docente: Michele Ferrari - michele.ferrari@unife.it Nelle lezioni

Dettagli

Trapani. Dispensa di Geometria,

Trapani. Dispensa di Geometria, 2014 Trapani Dispensa di Geometria, 1 Gauss Lagrange Diciamo che la matrice simmetrica reale A e congruente alla matrice B mediante la matrice invertibile N se N t AN = B. Diciamo che A e diagonalizzabile

Dettagli

Esercitazioni di Calcolo Numerico 09-16/03/2009, Laboratorio 1

Esercitazioni di Calcolo Numerico 09-16/03/2009, Laboratorio 1 Esercitazioni di Calcolo Numerico 09-6/03/2009, Laboratorio Nel seguito le righe di comando MATLAB sono indicate con >> per meglio distinguerle dal resto del testo. Si consiglia di leggere completamente

Dettagli

Laboratorio di Sperimentazioni di Fisica I MOD A. 14 ottobre 2009

Laboratorio di Sperimentazioni di Fisica I MOD A. 14 ottobre 2009 Laboratorio di Sperimentazioni di Fisica I MOD A 14 ottobre 2009 m files Gli m files sono degli script, ossia dei programmi che si eseguono invocandone il nome dalla command window. Non ricevono variabili

Dettagli

Esame di Calcolo Numerico per Informatica A.A. 2010/11: testo soluzioni Proff. S. De Marchi e M. R. Russo 12 luglio 2011

Esame di Calcolo Numerico per Informatica A.A. 2010/11: testo soluzioni Proff. S. De Marchi e M. R. Russo 12 luglio 2011 Esame di Calcolo Numerico per Informatica A.A. 200/: testo soluzioni Proff. S. De Marchi e M. R. Russo 2 luglio 20 L esame consiste di 4 domande aperte e 0 esercizi a risposta multipla. Per gli esercizi

Dettagli

Aritmetica in Floating Point

Aritmetica in Floating Point Aritmetica in Floating Point Esempio di non associatività Alcune proprietà delle operazioni in aritmetica esatta possono non valere in aritmetica finita in virgola mobile (floating point). Ad esempio:

Dettagli

Corso di Matematica per la Chimica

Corso di Matematica per la Chimica Dott.ssa Maria Carmela De Bonis a.a. 2013-14 Pivoting e stabilità Se la matrice A non appartiene a nessuna delle categorie precedenti può accadere che al k esimo passo risulti a (k) k,k = 0, e quindi il

Dettagli

MatLab - Testo pagina 1 di 5 101

MatLab - Testo pagina 1 di 5 101 MatLab - Testo pagina 1 di 5 101 8. FUNZIONI E SCRIPT IN MATLAB 801. Scrivere il listato di un file funzione MatLab alfa(x) che, dato un numero reale x dia come risultato la matrice p calcolata come segue:

Dettagli

Progetto Analisi Numerica

Progetto Analisi Numerica Progetto Analisi Numerica Calcolo degli autovalori di una matrice Fabio Donatantonio INDICE Traccia pg. 4 Metodo delle potenze Scopo, Specifiche d uso, Descrizione pg. 5 Parametri, Accuratezza, Complessità

Dettagli

12 Function Handles e Ricorsione in MATLAB

12 Function Handles e Ricorsione in MATLAB 1 Function Handles e Ricorsione in MATLAB Un function handle è una variabile il cui valore è una funzione. Data una funzione esistente, il suo function handle è dichiarato come handle = @nome dove nome

Dettagli

Esercizi Di Geometria 1 (BAER) Canale 2

Esercizi Di Geometria 1 (BAER) Canale 2 Esercizi Di Geometria (BAER) Canale SETTIMANA (4 Dic 0 Dic) Esercizio Consideriamo nel piano il triangolo di vertici P = (, ), Q = (, 0) e R = (0, ) Calcolare il circocentro (ovvero il centro della circonferenza

Dettagli

Università di Venezia Ca Foscari. Corso di Laurea in Informatica. Insegnamento di Calcolo Numerico Prof. F. Sartoretto

Università di Venezia Ca Foscari. Corso di Laurea in Informatica. Insegnamento di Calcolo Numerico Prof. F. Sartoretto Università di Venezia Ca Foscari Corso di Laurea in Informatica Insegnamento di Calcolo Numerico Prof. F. Sartoretto Prova scritta del 9 febbraio 2005 CORREZIONE Nome Cognome Matricola Aula Posto Norme

Dettagli

INFORMATICA. Strutture iterative

INFORMATICA. Strutture iterative INFORMATICA Strutture iterative Strutture iterative Si dice ciclo (loop) una sequenza di istruzioni che deve essere ripetuta più volte consecutivamente. Si consideri ad esempio il calcolo del fattoriale

Dettagli

osservazione: 1 MCD(m,n) min(m,n) = si provano i numeri compresi tra 1 e min(m,n) conviene iniziare da min(m,n) e scendere verso 1

osservazione: 1 MCD(m,n) min(m,n) = si provano i numeri compresi tra 1 e min(m,n) conviene iniziare da min(m,n) e scendere verso 1 Esempio: Leggere due interi positivi e calcolarne il massimo comun divisore. MCD(12, 8) = 4 MCD(12, 6) = 6 MCD(12, 7) = 1 Sfruttando direttamente la definizione di MCD osservazione: 1 MCD(m,n) min(m,n)

Dettagli

Corso di Geometria - CdL triennale in Ingegneria a.a

Corso di Geometria - CdL triennale in Ingegneria a.a Corso di Geometria - CdL triennale in Ingegneria a.a. 8-9 C. Liverani J. Garofali Tutorato del /5/9 Determinanti aree e prodotti scalari ( ) ( ). Date A = e B = Calcolare A B (AB) det(ba ) (A t ). ( )

Dettagli

(a) Si proponga una formulazione di programmazione nonlineare a variabili misto-intere per problema.

(a) Si proponga una formulazione di programmazione nonlineare a variabili misto-intere per problema. 6. Clustering In molti campi applicativi si presenta il problema del data mining, che consiste nel suddividere un insieme di dati in gruppi e di assegnare un centro a ciascun gruppo. Ad esempio, in ambito

Dettagli

Ordinamento efficiente: quick-sort

Ordinamento efficiente: quick-sort Ordinamento efficiente: quick-sort Si cerca di ridurre la parte disordinata di più di un elemento per volta (a differenza di selection-sort e bubble-sort) L idea è di ordinare parzialmente l array, in

Dettagli

ESERCITAZIONE MATLAB

ESERCITAZIONE MATLAB ESERCITAZIONE MATLAB Di seguito sono ripostati alcuni esercizi da eseguire in ambiente MatLab. Gli esercizi sono divisi per argomenti. Ogni esercizio è preceduto da una serie di esempi che aiutano nello

Dettagli

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 6 Metodi iterativi per sistemi lineari

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 6 Metodi iterativi per sistemi lineari Complementi di Matematica e Calcolo Numerico A.A. 2017-2018 Laboratorio 6 Metodi iterativi per sistemi lineari Dati una matrice A R N N non singolare e un vettore b R N, un metodo iterativo per la risoluzione

Dettagli

Computazione per l interazione naturale: modelli a variabili latenti (clustering e riduzione di dimensionalità)

Computazione per l interazione naturale: modelli a variabili latenti (clustering e riduzione di dimensionalità) Computazione per l interazione naturale: modelli a variabili latenti (clustering e riduzione di dimensionalità) Corso di Interazione Naturale Prof. Giuseppe Boccignone Dipartimento di Informatica Università

Dettagli

Complementi di Matematica A.A Laboratorio 10

Complementi di Matematica A.A Laboratorio 10 Complementi di Matematica A.A. 2016-2017 Laboratorio 10 Equazioni non lineari (fzero) Sia f : R R una funzione che ammette una radice α, ovvero t.c. f(α) = 0. Possiamo utilizzare la funzione predefinita

Dettagli

Università degli Studi di Ferrara Corso di Laurea in Chimica - A.A

Università degli Studi di Ferrara Corso di Laurea in Chimica - A.A Università degli Studi di Ferrara Corso di Laurea in Chimica - A.A. 2018-2019 Programmazione Lezione 12A Esercizi in MATLAB Docente: Lorenzo Caruso lorenzo.caruso@unife.it Nelle lezioni precedenti Matlab:

Dettagli

Operazioni elementari e riduzione

Operazioni elementari e riduzione Matrici e sistemi Operazioni elementari Riduzioni di matrici L algoritmo di riduzione 2 2006 Politecnico di Torino 1 Operazioni elementari per righe Sia A M m,n. Introduciamo tre tipi di operazioni che

Dettagli

Ordinamento di una lista: bubble-sort

Ordinamento 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:

Dettagli

Laboratorio di Calcolo Numerico

Laboratorio di Calcolo Numerico Laboratorio di Calcolo Numerico Lezione 3 Padova, April 4th 2016 F. Piazzon Department of Mathematics. Doctoral School in Mathematical Sciences, Applied Mathematics Area Outline Lab. 3-2 of 16 1 Costrutti

Dettagli

Compito di MD 1 0 aprile 2014

Compito di MD 1 0 aprile 2014 Compito di MD aprile 24 IMPORTANTE: Non si possono consultare libri e appunti. Non si possono usare calcolatrici, computer o altri dispositivi elettronici. Non si può scrivere con il lapis. Motivare in

Dettagli

Sistemi sovradeterminati

Sistemi sovradeterminati Sistemi sovradeterminati Sia A una matrice m n ove m > n sia b R m trovare una soluzione del sistema sovradeterminato Ax = b significa cercare di esprimere un vettore di R m come combinazione lineare di

Dettagli

Codifica dell informazione numerica

Codifica dell informazione numerica Codifica dell informazione numerica Nicola Basilico, nicola.basilico@unimi.it Architetture degli Elaboratori I, Laboratorio - Corso di Laurea in Informatica, A.A. 201-2018 Informazioni (edizione 2017-2018)

Dettagli

UD4 - MATLAB. M-file. Efficienza degli algoritmi. Formati d uscita

UD4 - MATLAB. M-file. Efficienza degli algoritmi. Formati d uscita UD4 - MATLAB M-file. Efficienza degli algoritmi. Formati d uscita M-files In MatLab è possibile eseguire istruzioni contenute in file esterni; Tali file sono chiamati M-file perché devono avere estensione.m

Dettagli

Geometria BIAR Esercizi 2

Geometria BIAR Esercizi 2 Geometria BIAR 0- Esercizi Esercizio. a Si consideri il generico vettore v b R c (a) Si trovi un vettore riga x (x, y, z) tale che x v a (b) Si trovi un vettore riga x (x, y, z) tale che x v kb (c) Si

Dettagli

Laboratorio di Analisi Numerica Lezione 7

Laboratorio di Analisi Numerica Lezione 7 Laboratorio di Analisi Numerica Lezione 7 Gianna Del Corso Leonardo Robol 19 Novembre 2013 Quantità di esercizi: in questa dispensa ci sono più esercizi di

Dettagli

Capitolo 8 Forme quadratiche e loro applicazioni Esercizi svolti Tutorato di geometria e algebra lineare. Marco Robutti

Capitolo 8 Forme quadratiche e loro applicazioni Esercizi svolti Tutorato di geometria e algebra lineare. Marco Robutti Capitolo 8 Forme quadratiche e loro applicazioni Esercizi svolti Tutorato di geometria e algebra lineare Marco Robutti 5 Ottobre 2017 1 Introduzione Gli esercizi di questo capitolo riguardano i seguenti

Dettagli

Autovalori ed autovettori di una matrice

Autovalori ed autovettori di una matrice Autovalori ed autovettori di una matrice Lucia Gastaldi DICATAM http://www.ing.unibs.it/gastaldi/ Indice 1 Definizioni di autovalori ed autovettori Autovalori ed autovettori 2 Metodo delle potenze 3 Calcolo

Dettagli

Analisi e implementazione dell algoritmo di Dijkstra (Parte 1)

Analisi e implementazione dell algoritmo di Dijkstra (Parte 1) Analisi e implementazione dell algoritmo di Dijkstra (Parte 1) Algoritmicamente August 1, 2009 http://algoritmicamente.wordpress.com/ 1 Concetti fondamentali Definizione 1 Un grafo è un insieme di vertici

Dettagli