Laboratorio di Algoritmi

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Laboratorio di Algoritmi"

Transcript

1 Laboratorio di Algoritmi Progetto Fabbrica (gennaio 2019) Nota: La scadenza del progetto è fissata per lunedì 21 gennaio compreso. Nota: Si consiglia di consultare sulla pagina web il documento che riporta le avvertenze utili per lo svolgimento del progetto. Si consiglia anche di verificare di tanto in tanto gli aggiornamenti a questo documento, che potrà essere aggiornato con la correzione di eventuali errori e le risposte ai dubbi degli studenti. Il problema Una fabbrica produce serramenti metallici a partire da lamiere di vari spessori e materiali. I pezzi che produce sono molto variegati, spesso unici. Il progetto si concentra sulla prima fase della produzione, cioè il taglio dei pezzi dalle lamiere. Una volta tagliati, i pezzi vengono raccolti in un magazzino, prima di passare alle fasi successive, di piega e di assemblaggio, che non ci interessano qui. Nel seguito, quindi, con produzione intenderemo solo la fase di taglio. Sono dati: un orizzonte temporale in cui la produzione si deve svolgere; un elenco di macchine disponibili; un elenco di pezzi da produrre. L orizzonte temporale è un insieme di giorni, rappresentati da numeri interi consecutivi, da 1 a T. L elenco delle macchine specifica per ogni macchina: la velocità di taglio, che dipende dallo spessore della lamiera (per semplicità, non dipende invece dal materiale), ed è calcolata in millimetri al secondo come descritto nel seguito; il tempo di attività durante il quale è attiva in ciascun giorno dell orizzonte, espresso in secondi (zero se la macchina non è attiva). L elenco dei pezzi specifica per ogni pezzo: il materiale di cui è composto; lo spessore della lamiera con cui va prodotto, espresso in millimetri; il perimetro di taglio, che comprende anche eventuali buchi interni, espresso in millimetri; la release date, cioè l indice intero del giorno prima del quale non può essere tagliato; la deadline, cioè l indice intero del giorno dopo il quale non può essere tagliato; un sottoinsieme di macchine che lo possono produrre. Bisogna definire il piano di produzione della fabbrica, cioè indicare per ogni pezzo se viene prodotto (l elenco dei pezzi potrebbe eccedere la capacità della fabbrica), in quale giorno (non importa l ora) e su quale macchina. L obiettivo è massimizzare il numero di pezzi prodotti, perché questo riduce la domanda rimasta insoddisfatta (cioè soddisfatta in ritardo o ricorrendo a produzione in outsourcing). L obiettivo verrà perseguito in modo euristico, cioè senza garanzia di ottimalità, con gli algoritmi descritti nel seguito. 1

2 Il progetto Il progetto richiede anzi tutto di caricare da un file di testo i dati sull orizzonte temporale, le macchine disponibili e i pezzi da produrre. Il file comincia con il numero di giorni T dell orizzonte temporale, seguito dalla parola chiave giorni. Ad esempio: 3 giorni indica che l orizzonte temporale si compone dei giorni 1, 2 e 3. Quindi, il file riporta le informazioni sulle macchine, cominciando con il numero delle macchine disponibili, seguito dalla parola chiave macchine. Ciascuna delle righe seguenti fornisce le informazioni associate ad una macchina: 1. l indice numerico m, crescente da da 1 al numero delle macchine; 2. il coefficiente r m (espresso in mm 2 /sec) che, diviso per lo spessore della lamiera in millimetri, fornisce la velocità di taglio della macchina m in millimetri al secondo; 3. il tempo di attività d mg della macchina m in ciascun giorno g dell orizzonte temporale, espresso in secondi. L indice m e il tempo di attività d mg sono numeri interi, il coefficiente r m è un numero frazionario. Ad esempio: 2 macchine indica che la macchina 1 taglia alla velocità di 53.4/s millimetri al secondo, dove s è lo spessore in millimetri della lamiera (dunque 53.4 mm/sec per lamiere spesse un millimetro, 26.7 mm/sec per lamiere spesse due millimetri, ecc... ), che è attiva per 180 secondi nel giorno 1, non è attiva nel giorno 2 e infine è attiva per 500 secondi nel giorno 3. Analogamente, la macchina 2 taglia alla velocità di 36.6/s millimetri al secondo, è attiva per 400 secondi nel giorno 1, per 200 secondi nel giorno 2 e non è attiva nel giorno 3. Seguono le informazioni sui pezzi, che cominciano con il numero dei pezzi da produrre, seguito dalla parola chiave pezzi. Ciascuna delle righe seguenti fornisce le informazioni associate ad un pezzo: 1. l indice numerico p crescente da 1 al numero dei pezzi; 2. il materiale, che può essere bronzo, ferro o alluminio; 3. lo spessore s p ; 4. il perimetro complessivo p p ; 5. gli indici della release date e della deadline; 6. la lista degli indici delle macchine che possono produrre il pezzo, ordinata per valori crescenti 1 Ad esempio: 10 pezzi 1 bronzo Per non impazzire a contare gli indici, consiglio di caricare la riga in una stringa s e poi applicare iterativamente l istruzione sscanf(s,"%d%[^\0]",&m,s); che legge il primo numero nella variabile m e lo cancella dalla stringa, fermandosi non appena l istruzione restituisce un valore diverso da 2. In alternativa, ci si può addentrare nell uso dell istruzione strtok. 2

3 2 bronzo ferro alluminio bronzo ferro bronzo ferro alluminio ferro indica che il pezzo 1 è fatto di bronzo, ha uno spessore di 6 mm, un perimetro di 669 mm, deve essere prodotto non prima del giorno 1 e non più tardi del giorno 2 e può essere prodotto solo sulla macchina 1. Per fare un altro esempio, il pezzo 6 è fatto di ferro, ha uno spessore di 5 mm, un perimetro di mm, deve essere prodotto non prima del giorno 2 e non più tardi del giorno 3 e può essere prodotto su entrambe le macchine disponibili. Non ci sono garanzie che le macchine compatibili con un pezzo siano disponibili nell intervallo di tempo in cui esso è producibile, né che la capacità produttiva delle macchine sia sufficiente per tutti i pezzi. Infatti, il primo obiettivo del problema è massimizzare il numero dei pezzi prodotti. Il fattore che limita la produzione è il tempo impiegato a tagliare i pezzi. Per semplicità, si ignora qualsiasi operazione che non sia il puro e semplice taglio delle lamiere (ad esempio, il carico e lo scarico delle lamiere, i movimenti a vuoto della testina di taglio, l ingresso della testina nella lamiera al principio e l uscita alla fine del taglio di ogni singolo pezzo. In questo modo, il tempo di taglio di un pezzo è dato dalla formula pp s p t pm = dove t pm è il tempo di taglio del pezzo p sulla macchina m (espresso in secondi), p p e s p sono il perimetro e lo spessore del pezzo p (espressi in millimetri) e r m è il coefficiente della macchina m (espresso in mm 2 /sec). Il tempo viene arrotondato all intero superiore per sicurezza e per semplicità. A questo punto, è possibile costruire un grafo che descriva la relazione fra domanda e offerta di produzione: i vertici del grafo rappresentano: 1. i pezzi da produrre; r m 2. le coppie (macchina, giorno) disponibili, cioè tali che la macchina sia attiva nel giorno, che nel seguito saranno indicate come slot; i lati del grafo rappresentano le compatibilità fra un pezzo e una coppia (macchina, giorno): indicando che la macchina può produrre il pezzo e che il giorno appartiene all intervallo di produzione del pezzo. Si richiede di stampare a video, riga per riga, le seguenti informazioni sul grafo: il numero di vertici totale, seguito dalla parola chiave vertici; il numero di vertici che rappresentano pezzi, seguito dalla parola chiave pezzi; l elenco di tali vertici, ordinato per grado crescente (a parità di grado, si sommino i tempi t pm associati ai lati incidenti in ogni vertice, e si ordinino i vertici per tempo totale decrescente); il numero di vertici che rappresentano slot, seguito dalla parola chiave slot; 3

4 l elenco di tali vertici, ordinato per tempo di attività decrescente (si tratta del tempo, fornito nei dati, durante il quale la macchina è attiva nel giorno), nel formato: indice pezzo grado t pm il numero di lati, seguito dalla parola chiave lati; l elenco dei lati, ordinato per tempo di taglio, nel formato: indice pezzo indice macchina indice giorno t pm Siccome i lati associati allo stesso pezzo e alla stessa macchina, ma a giorni diversi, hanno lo stesso tempo di taglio, si usi l indice del giorno come criterio secondario di ordinamento. Quindi i lati associati allo stesso pezzo e macchina saranno consecutivi e ordinati per giorno crescente. A questo punto, si procede ad assegnare i pezzi agli slot in base alla seguente procedura. Si considerino i pezzi in ordine di grado crescente e tempo totale decrescente (la logica è che i primi pezzi sono quelli più critici, dato che hanno meno slot disponibili e richiedono più tempo per essere prodotti). Scorrendo i pezzi in tale ordine, si assegni il pezzo corrente allo slot con esso compatibile che abbia il massimo tempo di attività residuo. Questo è inizialmente pari il tempo di attività fornito nei dati, ma viene diminuito ogni volta che si un pezzo viene assegnato allo slot di una quantità pari al tempo t pm richiesto dal pezzo stesso. Se il tempo residuo non è sufficiente a produrre il pezzo, si passa allo slot compatibile seguente. Se nessuno slot ha tempo residuo sufficiente, si marca il pezzo come scartato. Al termine, si stampi a video la soluzione del problema, riga per riga, nel seguente formato: il numero dei pezzi scartati, seguito dalla parola chiave pezzi scartati; l elenco degli slot (macchina, giorno), ordinati prima per macchina e poi per giorno 2, riportando l indice della macchina, seguito dall indice del giorno, dal tempo residuo di attività espresso in secondi e dall elenco dei pezzi assegnati allo slot, ordinati per indici crescenti. Infine, si affronti il problema di assegnare i pezzi agli slot con la seguente procedura alternativa. Si considerino gli slot in ordine di tempo di attività decrescente (quello fornito nei dati, dato che nessun pezzo è ancora stato assegnato allo slot corrente). Per ciascuno, si risolva in modo esatto con la programmazione dinamica il problema di zaino per il quale gli oggetti sono i pezzi compatibili con lo slot, i loro volumi sono i tempi di taglio t pm e la capacità dello zaino è il tempo di attivitià dello slot. Risolto il problema, si assegnino allo slot tutti i pezzi inseriti nello zaino. Tali pezzi, ovviamente, non sono più disponibili per gli slot successivi. Al termine, si stampi a video la nuova soluzione del problema, nel formato sopra descritto. Esempio 14 vertici 10 pezzi Trattandosi di elenco degli slot, non si devono stampare le coppie (macchina, giorno) per le quali la macchina non è attiva nel giorno indicato. 4

5 lati pezzi scartati pezzi scartati Chiarimenti In questa sezione saranno riportate le risposte a domande e dubbi. 5

Laboratorio di Algoritmi

Laboratorio di Algoritmi Laboratorio di Algoritmi Progetto Insiemistica (luglio 2019) Nota: La scadenza del progetto è fissata per venerdì 12 luglio compreso. Nota: Si consiglia di consultare sulla pagina web il documento che

Dettagli

5 PROGRAMMAZIONE LINEARE INTERA (PLI) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

5 PROGRAMMAZIONE LINEARE INTERA (PLI) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 5 PROGRAMMAZIONE LINEARE INTERA (PLI) E. Amaldi Fondamenti di R.O. Politecnico di Milano Programma lineare intero: (PLI) min c T x Ax b x 0 intero Ipotesi: A, b interi La condizione di interezza non è

Dettagli

ASSEGNAMENTO DELLE OPERAZIONI DI TAGLIO NELLA PRODUZIONE DI CAPI DI ABBIGLIAMENTO

ASSEGNAMENTO DELLE OPERAZIONI DI TAGLIO NELLA PRODUZIONE DI CAPI DI ABBIGLIAMENTO ASSEGNAMENTO DELLE OPERAZIONI DI TAGLIO NELLA PRODUZIONE DI CAPI DI ABBIGLIAMENTO Lo scenario produttivo Una nota azienda produce capi di abbigliamento per l alta moda Ogni capo è costituito da vari pezzi

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

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

Algoritmi e Strutture Dati (Mod. B) Algoritmi Greedy (parte I)

Algoritmi e Strutture Dati (Mod. B) Algoritmi Greedy (parte I) Algoritmi e Strutture Dati (Mod. B) Algoritmi Greedy (parte I) Algoritmi greedy Gli algoritmi per problemi di ottimizzazione devono in genere operare una sequenza di scelte per arrivare alla soluzione

Dettagli

Risoluzione di un problema di VRP

Risoluzione di un problema di VRP Risoluzione di un problema di VRP Un problema di VRP (Vehicle Routing Problem) è un tipico problema di programmazione lineare in cui l obiettivo primario è quello di individuare, su una rete generica,

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Algoritmi Golosi (Greedy) Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino un algoritmo goloso correttezza Problema della selezione di attività

Dettagli

I Appello Ricerca Operativa 2 bis Compito A

I Appello Ricerca Operativa 2 bis Compito A I Appello Ricerca Operativa 2 bis Compito A Cognome e nome:. Esercizio 1. Si consideri il problema del matching di cardinalità massima in un grafo G ed il suo problema di decisione associato: esiste un

Dettagli

Laboratorio di Algoritmi

Laboratorio di Algoritmi Laboratorio di Algoritmi Progetto Supermercato (giugno 2017) Nota: La scadenza del progetto è fissata per lunedì 19 giugno compreso. Nota: Questa versione del documento è stata aggiornata il 13 giugno.

Dettagli

Appendice A: un esempio di scelta del mix ottimo di produzione in presenza di vincoli 19

Appendice A: un esempio di scelta del mix ottimo di produzione in presenza di vincoli 19 14 18-12-07 19:04 Pagina 411 Le decisioni di breve termine fra alternative diverse 411 i minori costi differenziali, almeno nella misura in cui la dimensione di costo è la più importante. Sebbene i costi

Dettagli

max z = c T x s.t. Ax b

max z = c T x s.t. Ax b 3 PROGRAMMAZIONE LINEARE A NUMERI INTERI 51 3 Programmazione lineare a numeri interi 3.1 Problemi lineari interi Dato il problema lineare ordinario (PLO): aggiungendo la condizione di integrità: max z

Dettagli

Programmazione Dinamica (PD)

Programmazione Dinamica (PD) Programmazione Dinamica (PD) Altra tecnica per risolvere problemi di ottimizzazione, piu generale degli algoritmi greedy La programmazione dinamica risolve un problema di ottimizzazione componendo le soluzioni

Dettagli

Ricerca Operativa. G. Liuzzi. Lunedí 20 Aprile 2015

Ricerca Operativa. G. Liuzzi. Lunedí 20 Aprile 2015 1 Lunedí 20 Aprile 2015 1 Istituto di Analisi dei Sistemi ed Informatica IASI - CNR Rilassamento di un problema Rilassare un problema di Programmazione Matematica vuol dire trascurare alcuni (tutti i)

Dettagli

Laboratorio di Algoritmi

Laboratorio di Algoritmi Laboratorio di Algoritmi Progetto Supermercato (giugno 2017) Nota: La scadenza del progetto è fissata per lunedì 19 giugno compreso. Nota: Questa versione del documento è stata aggiornata il 13 giugno.

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

Corso di Matematica per la Chimica. Dott.ssa Maria Carmela De Bonis a.a

Corso di Matematica per la Chimica. Dott.ssa Maria Carmela De Bonis a.a Dott.ssa Maria Carmela De Bonis a.a. 2013-14 Programmi Un elaboratore riceve dei dati in ingresso, li elabora secondo una sequenza predefinita di operazioni e infine restituisce il risultato sotto forma

Dettagli

1) Data la seguente istanza di TSP (grafo completo con 5 nodi): c 12 = 52; c 13 = 51; c 14 = 40; c 15 = 53; c 23 = 44;

1) Data la seguente istanza di TSP (grafo completo con 5 nodi): c 12 = 52; c 13 = 51; c 14 = 40; c 15 = 53; c 23 = 44; 1) Data la seguente istanza di TSP (grafo completo con 5 nodi): c 12 = 52; c 13 = 51; c 14 = 40; c 15 = 53; c 23 = 44; c 24 = 15; c 25 = 12; c 34 = 32; c 35 = 55; c 45 = 24 Si calcoli l ottimo duale (formulazione

Dettagli

Laboratorio di Algoritmi e Strutture Dati

Laboratorio di Algoritmi e Strutture Dati Laboratorio di Algoritmi e Strutture Dati Roberto Radicioni Progetto Social Net Consegna entro il 10 Febbraio 2009 - ore 12.00 Il problema Alcuni sociologi vogliono studiare le dinamiche delle reti sociali

Dettagli

dt t z 1 exp( t). = π, Γ

dt t z 1 exp( t). = π, Γ Prova d esame di Laboratorio di Calcolo I per il corso di laurea in Matematica 16 Settembre 2009 Tema d esame: studio di alcune proprietà della funzione Γ di Eulero. Descrizione del metodo di calcolo La

Dettagli

2 OTTIMIZZAZIONE SU GRAFI. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

2 OTTIMIZZAZIONE SU GRAFI. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 2 OTTIMIZZAZIONE SU GRAFI E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Molti problemi decisionali possono essere formulati utilizzando il linguaggio della teoria dei grafi. Esempi: - problemi di

Dettagli

RICERCA OPERATIVA (a.a. 2017/18) Nome: Cognome: Matricola:

RICERCA OPERATIVA (a.a. 2017/18) Nome: Cognome: Matricola: Primo appello 9//8 RICERCA OPERATIVA (a.a. 7/8) Nome: Cognome: Matricola: ) Si risolva il seguente problema di PL max x + x x + x x x x x applicando l algoritmo del Simplesso Primale, per via algebrica,

Dettagli

FONDAMENTI DI INTELLIGENZA ARTIFICIALE 13 Gennaio 2010 Tempo a disposizione 2h Risultato 32/32 punti

FONDAMENTI DI INTELLIGENZA ARTIFICIALE 13 Gennaio 2010 Tempo a disposizione 2h Risultato 32/32 punti FONDAMENTI DI INTELLIGENZA ARTIFICIALE Gennaio 2010 Tempo a disposizione 2h Risultato 32/32 punti Esercizio 1 (punti 6) Si modellino in logica dei predicati del I ordine le seguenti frasi (utilizzando

Dettagli

FONDAMENTI DI RICERCA OPERATIVA Prof. M.Trubian a.a. 2008/09 Prima prova in itinere: 25/11/08

FONDAMENTI DI RICERCA OPERATIVA Prof. M.Trubian a.a. 2008/09 Prima prova in itinere: 25/11/08 FONDAMENTI DI RICERCA OPERATIVA Prof. M.Trubian a.a. 2008/09 Prima prova in itinere: 25/11/08 Nome studente:... Matricola:...... Esercizio 3 4 5 6 Valore % 0.25 0.15 0.15 0.15 0.15 0.15 Valutazione A [1]

Dettagli

Programmazione Matematica: III.1 - Programmazione Lineare

Programmazione Matematica: III.1 - Programmazione Lineare Programmazione Matematica: III.1 - Programmazione Lineare Daniele Vigo D.E.I.S. Università di Bologna dvigo@deis.unibo.it rev. 1.0 ottobre 2003 Programmazione Lineare Def.: (F, ϕ ) è un problema di Programmazione

Dettagli

MANUALE UTENTE PROFILO TECNICO ESTERNO

MANUALE UTENTE PROFILO TECNICO ESTERNO MANUALE UTENTE PROFILO TECNICO ESTERNO 2 Sommario Introduzione... 5 Accesso al portale... 6 Sezione Assistenza... 8 Presa in carico... 15 Sincronizzazione... 16 3 Indice delle figure Figura 1 - Accesso

Dettagli

Il problema dello zaino: dalla gita in montagna ai trasporti internazionali. Luca Bertazzi

Il problema dello zaino: dalla gita in montagna ai trasporti internazionali. Luca Bertazzi Il problema dello zaino: dalla gita in montagna ai trasporti internazionali Luca Bertazzi 0 Ricerca Operativa (Operations Research) The Science of Better Modelli e algoritmi per la soluzione di problemi

Dettagli

2 OTTIMIZZAZIONE SU GRAFI. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

2 OTTIMIZZAZIONE SU GRAFI. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 2 OTTIMIZZAZIONE SU GRAFI E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Molti problemi decisionali possono essere formulati utilizzando il linguaggio della teoria dei grafi. Esempi: - problemi di

Dettagli

Chi non risolve esercizi non impara la matematica.

Chi non risolve esercizi non impara la matematica. 2.8 esercizi 31 2.8 esercizi hi non risolve esercizi non impara la matematica. 1 Vero o falso? a. I punti (0, 2), (4, 4), (6, 0) e (2, 2) sono i vertici di un quadrato. V F b. Non esiste il coefficiente

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Vettori e matrici #1 Le variabili definite come coppie sono dette variabili scalari Fondamenti di Informatica 5. Algoritmi e pseudocodifica Una coppia è una variabile

Dettagli

Sistemi operativi 2/ed Paolo Ancilotti, Maurelio Boari, Anna Ciampolini, Giuseppe Lipari Copyright 2008 The McGraw-Hill Companies srl

Sistemi operativi 2/ed Paolo Ancilotti, Maurelio Boari, Anna Ciampolini, Giuseppe Lipari Copyright 2008 The McGraw-Hill Companies srl SOLUZIONI DEI PROBLEMI DEL CAPITOLO 4. Soluzione: Adottando lo schema best-fit la partizione libera utilizzata per allocare un segmento di dimensione pari a 56 byte è quella le cui dimensioni siano le

Dettagli

Esame di Ricerca Operativa - 21 gennaio 2009 Facoltà di Architettura - Udine - CORREZIONE -

Esame di Ricerca Operativa - 21 gennaio 2009 Facoltà di Architettura - Udine - CORREZIONE - Esame di Ricerca Operativa - 2 gennaio 29 Facoltà di Architettura - Udine - CORREZIONE - Problema ( punti): Un azienda chimica produce quattro tipi di colla, A, B, C, D, utilizzando materie prime P, P

Dettagli

INTRODUZIONE ALLA PROGRAMMAZIONE

INTRODUZIONE ALLA PROGRAMMAZIONE INTRODUZIONE ALLA PROGRAMMAZIONE Prof. Enrico Terrone A. S: 2008/09 Definizioni Programmare significa risolvere problemi col computer, cioè far risolvere problemi al computer attraverso un insieme di informazioni

Dettagli

Programmazione Lineare Intera: Piani di Taglio

Programmazione Lineare Intera: Piani di Taglio Programmazione Lineare Intera: Piani di Taglio Andrea Scozzari a.a. 2014-2015 April 22, 2015 Andrea Scozzari (a.a. 2014-2015) Programmazione Lineare Intera: Piani di Taglio April 22, 2015 1 / 23 Programmazione

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Algoritmi Golosi (Greedy) Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino Problema della selezione di attività Problema: Sia S = {a 1, a 2,,

Dettagli

Informatica (A-K) 5. Algoritmi e pseudocodifica

Informatica (A-K) 5. Algoritmi e pseudocodifica Vettori e matrici #1 Informatica (A-K) 5. Algoritmi e pseudocodifica Corso di Laurea in Ingegneria Civile & Ambientale A.A. 2011-2012 2 Semestre Prof. Giovanni Pascoschi Le variabili definite come coppie

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

Calcolo su Polinomi ===================

Calcolo su Polinomi =================== Calcolo su Polinomi =================== Descrizione Implementare la classe Monomio le cui istanze rappresentano generici monomi a valori reali del tipo: m(x) = c* x d ovvero monomi contenenti una sola

Dettagli

Corso di Perfezionamento

Corso di Perfezionamento Programmazione Dinamica 1 1 Dipartimento di Matematica e Informatica Università di Camerino 15 febbraio 2009 Tecniche di Programmazione Tecniche di progettazione di algoritmi: 1 Divide et Impera 2 Programmazione

Dettagli

Fondamenti di Informatica 6. Algoritmi e pseudocodifica

Fondamenti di Informatica 6. Algoritmi e pseudocodifica Vettori e matrici #1 Fondamenti di Informatica 6. Algoritmi e pseudocodifica Corso di Laurea in Ingegneria Civile A.A. 2010-2011 1 Semestre Prof. Giovanni Pascoschi Le variabili definite come coppie

Dettagli

Cos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia

Cos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia Programmazione Un programma descrive al computer, in estremo dettaglio, la sequenza di passi necessari a svolgere un particolare compito L attività di progettare e realizzare un programma è detta programmazione

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

A-2 a PI. Esercizio 2. Domanda 3

A-2 a PI. Esercizio 2. Domanda 3 A-2 a PI Ricerca Operativa 1 Seconda prova intermedia È dato il problema di PL in figura. 1. Facendo uso delle condizioni di ortogonalità, dimostrare o confutare l ottimalità della soluzione x = 1; x =

Dettagli

2.3.3 Cammini ottimi nei grafi senza circuiti

2.3.3 Cammini ottimi nei grafi senza circuiti .. Cammini ottimi nei grafi senza circuiti Sia un grafo G = (N, A) orientato senza circuiti e una funzione di costo che assegna un valore c ij R ad ogni arco (i, j) A circuito Proprietà I nodi di un grafo

Dettagli

Sistemi di numerazione

Sistemi di numerazione Sistemi di numerazione Numeri naturali Noi rappresentiamo i numeri con una sequenza di cifre, ad esempio 10 : 0,1,2,3,4,5,6,7,8,9, secondo una notazione posizionale. Posizionale significa che il valore

Dettagli

Corso di Perfezionamento

Corso di Perfezionamento Zaino frazionario e Algoritmi golosi 1 1 Dipartimento di Matematica e Informatica Università di Camerino 17 febbraio 2009 0-1 Un ladro entra in un magazzino e trova n oggetti L i-esimo oggetto vale v i

Dettagli

RICERCA OPERATIVA (a.a. 2014/15) Nome: Cognome: Matricola:

RICERCA OPERATIVA (a.a. 2014/15) Nome: Cognome: Matricola: 7 o Appello /9/ RICERCA OPERATIVA (a.a. /) Nome: Cognome: Matricola: ) Si consideri il seguente problema di PL max x x x x x x + x 6 x e la corrispondente soluzione x = [,. Utilizzando il teorema degli

Dettagli

METODI DELLA RICERCA OPERATIVA

METODI DELLA RICERCA OPERATIVA Università degli Studi di Cagliari FACOLTA' DI INGEGNERIA CORSO DI METODI DELLA RICERCA OPERATIVA Dott.ing. Massimo Di Francesco (mdifrance@unica.it) i i Dott.ing. Maria Ilaria Lunesu (ilaria.lunesu@unica.it)

Dettagli

1.4 Si risolva mediante gli scarti complementari il duale del problema dato.

1.4 Si risolva mediante gli scarti complementari il duale del problema dato. FONDAMENTI DI RICERCA OPERATIVA (turno unico) Prof. M.Trubian a.a. 2006/07 Prima prova in itinere: 24/11/06 Nome studente:... Matricola:...... A Esercizio 3 4 5 6 Valore % 0.3 0.2 0.2 0.15 0.1 0.05 Valutazione

Dettagli

RICERCA OPERATIVA GRUPPO A prova scritta del 21 luglio 2010

RICERCA OPERATIVA GRUPPO A prova scritta del 21 luglio 2010 RICERCA OPERATIVA GRUPPO A prova scritta del luglio 00. Dato il problema di programmazione lineare P) min z = x + x + x max y + y x + x + x = y + y < x + x x y + y < x, x, x 0 y y < y > 0 a) costruirne

Dettagli

INPUT E OUTPUT DI VALORI NUMERICI

INPUT E OUTPUT DI VALORI NUMERICI INPUT E OUTPUT DI VALORI NUMERICI FUNZIONI DI I/O PER NUMERI Per utilizzare le funzioni di Input/Output bisogna includere il file di intestazione (header file) denominato contiene la

Dettagli

Laboratorio di Algoritmi

Laboratorio di Algoritmi Laboratorio di Algoritmi Progetto Molecole (gennaio 2018) Nota: La scadenza del progetto è fissata per martedì 16 gennaio compreso. Nota: Si consiglia di verificare ogni tanto se questo documento è stato

Dettagli

Progetto e analisi di algoritmi

Progetto 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

Dettagli

Quinto appello 27/6/ = 4. B b B = 2 b N = 4

Quinto appello 27/6/ = 4. B b B = 2 b N = 4 Quinto appello // RICERCA OPERATIVA (a.a. /) Nome: Cognome: Matricola: ) Si risolva il problema di PL dato applicando l algoritmo del Simplesso Duale, per via algebrica, a partire dalla base B {, }. Per

Dettagli

svolgimento. Il problema può essere formulato introducendo le seguenti variabili: x B4 = quantità di bianco (in kg) utilizzata per produrre tinta 4;

svolgimento. Il problema può essere formulato introducendo le seguenti variabili: x B4 = quantità di bianco (in kg) utilizzata per produrre tinta 4; Esame di Ricerca Operativa - giugno 2 Facoltà di Architettura - Udine - CORREZIONE - Problema ( punti): La Coloraben mira ad affermarsi nella vendita di tinte e smalti. La disponibilità di vernici base

Dettagli

Array e Oggetti. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 12. A. Miola Dicembre 2006

Array e Oggetti. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 12. A. Miola Dicembre 2006 Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 12 Array e Oggetti A. Miola Dicembre 2006 http://www.dia.uniroma3.it/~java/fondinf1/ Array e Oggetti 1 Contenuti Array paralleli

Dettagli

ESERCIZI SULLA TECNICA BACKTRACKING e BRANCH & BOUND

ESERCIZI SULLA TECNICA BACKTRACKING e BRANCH & BOUND ESERCIZI SULLA TECNICA BACKTRACKING e BRANCH & BOUND 1. [ STRINGHE] Scrivere in pseudo-codice una procedura che, preso in input un intero n, stampi tutte le stringhe di lunghezza minore o uguale ad n sull

Dettagli

ESERCIZIO 1. Informatica B - Esercitazione 12

ESERCIZIO 1. Informatica B - Esercitazione 12 ESERCIZIO 1 Si scriva in Octave/MATLAB la funzione analisimatrice che: ricevo come parametro una matrice a, verifica che i suoi valori NON siano tutti uguali. Se questo è verificato: - calcola il valore

Dettagli

FONDAMENTI DI INTELLIGENZA ARTIFICIALE (8 CFU)

FONDAMENTI DI INTELLIGENZA ARTIFICIALE (8 CFU) FONDAMENTI DI INTELLIGENZA ARTIFICIALE (8 CFU) 11 Settembre 2014 Tempo a disposizione: 2 h Risultato: 32/32 punti Esercizio 1 (6 punti) Si esprimano in logica dei predicati del I ordine le seguenti frasi:

Dettagli

Nella propria home directory creare una sottodirectory chiamata es08, in cui metteremo tutti i file C di oggi.

Nella propria home directory creare una sottodirectory chiamata es08, in cui metteremo tutti i file C di oggi. Laboratorio 8 Nella propria home directory creare una sottodirectory chiamata es08, in cui metteremo tutti i file C di oggi. Note Quando dovete usare o ritornare dei valori booleani, usate la seguente

Dettagli

LABORATORIO 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 LABORATORIO DI ALGORITMI E STRUTTURE DATI A-L Ingegneria e scienze informatiche Cesena A.A: 2016/2017 Docente: Greta Sasso Algoritmi Greedy VS Programmazione dinamica Si applicano a problemi di ottimizzazione,

Dettagli

CRITERIO DI ROUTH-HURWITZ

CRITERIO DI ROUTH-HURWITZ CONTROLLI AUTOMATICI Ingegneria Meccanica e Ingegneria del Veicolo http://www.dii.unimore.it/~lbiagiotti/controlliautomatici.html CRITERIO DI ROUTH-HURWITZ Ing. e-mail: luigi.biagiotti@unimore.it http://www.dii.unimore.it/~lbiagiotti

Dettagli

Note sul Sudoku. Marco Liverani. Dicembre 2005

Note sul Sudoku. Marco Liverani. Dicembre 2005 Note sul Sudoku Marco Liverani Dicembre 2005 1 Introduzione Il gioco del Sudoku è un rompicapo giapponese che sta riscuotendo un successo notevole nel cosiddetto grande pubblico : pur essendo un gioco

Dettagli

RICERCA OPERATIVA (a.a. 2016/17) Nome: Cognome: Matricola:

RICERCA OPERATIVA (a.a. 2016/17) Nome: Cognome: Matricola: Secondo appello //0 RICERCA OPERATIVA (a.a. 0/) Nome: Cognome: Matricola: ) Si risolva il seguente problema di PL max x x x x x + x x x per via algebrica, mediante l algoritmo del Simplesso Primale a partire

Dettagli

Esame di MICROECONOMIA del VISIONE D INSIEME (6 domande; 2 punti risp. giusta, 0 risp. non data, -1 risp. sbagliata)

Esame di MICROECONOMIA del VISIONE D INSIEME (6 domande; 2 punti risp. giusta, 0 risp. non data, -1 risp. sbagliata) COGNOME E NOME (in stampatello): CORSO DI LAUREA: NUMERO DI MATRICOLA: FIRMA: Esame di MICROECONOMIA del 18.7.2008 Raccomandazioni generali: 1. I compiti senza nome, cognome, numero di matricola e firma

Dettagli

RICERCA OPERATIVA (a.a. 2011/12) Nome: Cognome: Matricola:

RICERCA OPERATIVA (a.a. 2011/12) Nome: Cognome: Matricola: 5 o Appello 8/0/0 RICERCA OPERATIVA (a.a. 0/) Nome: Cognome: Matricola: ) Si individui un albero dei cammini minimi di radice sul grafo in figura, utilizzando l algoritmo più appropriato dal punto di vista

Dettagli

Metodi e modelli per le decisioni

Metodi e modelli per le decisioni Metodi e modelli per le decisioni Roberto Cordone A. A. 2015-16 10.8 Esercizi Nota : Devo molti di questi esercizi a temi d esame del prof. Alberto Colorni. Nota : Gli esercizi e le soluzioni non sono

Dettagli

MANUALE UTENTE PROFILO TECNICO INTERNO

MANUALE UTENTE PROFILO TECNICO INTERNO MANUALE UTENTE PROFILO TECNICO INTERNO 2 Sommario Introduzione... 5 Accesso al portale... 6 Sezione Assistenza... 8 Presa in carico... 18 Sincronizzazione... 19 Sezione Interventi Cliente... 21 Sezione

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

>> A = [1 2 3; 4 5 6; 7 8 9]; >> A

>> A = [1 2 3; 4 5 6; 7 8 9]; >> A Creazione di matrici Delimititatore di riga Delimititatore di matrice >> A = [1 2 3; 4 5 6; 7 8 9]; >> A = [... 1 2 3 4 5 6 7 8 9 ]; Entrambi i comandi creano la stessa matrice 3x3 Accedere agli elementi

Dettagli

Linea monoprodotto con assiemature (modello:pettine): lotto, flusso. Minimo tempo di completamento: pezzo singolo, lotto finito, linea satura

Linea monoprodotto con assiemature (modello:pettine): lotto, flusso. Minimo tempo di completamento: pezzo singolo, lotto finito, linea satura Linea monoprodotto con assiemature (modello:pettine): lotto, flusso Minimo tempo di completamento: pezzo singolo, lotto finito, linea satura Sistemi di movimentazione PIPELINE In questo tipo di sistemi

Dettagli

RICERCA OPERATIVA (a.a. 2016/17) Nome: Cognome: Matricola:

RICERCA OPERATIVA (a.a. 2016/17) Nome: Cognome: Matricola: Sesto appello // RICERCA OPERATIVA (a.a. /) Nome: Cognome: Matricola: ) Si risolva il seguente problema di PL max x x x x x x + x x per via algebrica, mediante l algoritmo del Simplesso Primale a partire

Dettagli

Programmazione dinamica

Programmazione dinamica p. 1/1 Programmazione dinamica La programmazione dinamica è un altro approccio che consente di risolvere problemi in modo esatto. Considereremo solo problemi di massimo ma piccole modifiche consentono

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

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

Matematica Computazionale(6cfu) Ottimizzazione(8cfu) (a.a , lez.9)

Matematica Computazionale(6cfu) Ottimizzazione(8cfu) (a.a , lez.9) Docente: Marco Gaviano (e-mail:gaviano@unica.it) Corso di Laurea in Infomatica Corso di Laurea in Matematica Matematica Computazionale(6cfu) Ottimizzazione(8cfu) (a.a. 05-6, lez.9) Matematica Computazionale,

Dettagli

RICERCA OPERATIVA. Tema d esame del 04/12/2008 (Simulazione 1)

RICERCA OPERATIVA. Tema d esame del 04/12/2008 (Simulazione 1) RICERCA OPERATIVA Tema d esame del 04/12/2008 (Simulazione 1) COGNOME: NOME: MATRICOLA: 1. Un azienda meccanica deve pianificare il lavoro delle sue tre macchine per un dato giorno. I lotti che è possibile

Dettagli

Appunti lezione Capitolo 14 Greedy

Appunti lezione Capitolo 14 Greedy Appunti lezione Capitolo 14 Greedy Alberto Montresor 21 Novembre, 2016 1 Domanda: dimostrare che S[i, j] = con i j Nel problema della selezione delle attività, il sottoinsieme S[i, j] è definito nel modo

Dettagli

Laboratorio di Algoritmi e Strutture Dati

Laboratorio di Algoritmi e Strutture Dati Laboratorio di Algoritmi e Strutture Dati Docenti: M Goldwurm, V Lonati Progetto Componenti elettroniche valido per gli appelli di giugno e luglio 2010 Premessa La realizzazione del progetto è una prova

Dettagli

Visione Giacenze. Il programma si presenta secondo lo standard Giacenze, Copertura, Opzioni.

Visione Giacenze. Il programma si presenta secondo lo standard Giacenze, Copertura, Opzioni. Visione Il programma consente di visualizzare le giacenze di magazzino degli articoli e i giorni di copertura. Si presenta in versione visuale ed utilizza gli strumenti di interrogazione standard di equilibra.

Dettagli

Listini Dinamici. Indice degli argomenti

Listini Dinamici. Indice degli argomenti Listini Dinamici Indice degli argomenti Premessa 1. Utilizzo dei listini dinamici 2. Impostazione delle tabelle utili per la creazione di un listino dinamico 3. Creazione di un Listino Dinamico 4. Utilizzo

Dettagli

INFORMATICA GENERALE Prof. Alberto Postiglione. Università degli Studi di Salerno. UD 3.1a: Gli Algoritmi

INFORMATICA GENERALE Prof. Alberto Postiglione. Università degli Studi di Salerno. UD 3.1a: Gli Algoritmi INFORMATICA GENERALE Prof. Alberto Postiglione Scienze della Comunicazione Università degli Studi di Salerno : Gli Algoritmi INFORMATICA GENERALE Prof. Alberto Postiglione Scienze della Comunicazione Università

Dettagli

2. Si definisca un algoritmo euristico di tipo greedy per determinare una buona soluzione ammissibile del problema;

2. Si definisca un algoritmo euristico di tipo greedy per determinare una buona soluzione ammissibile del problema; Esercizio 6 Un azienda di trasporti deve affrontare il seguente problema di caricamento. L azienda dispone di n prodotti che possono essere trasportati e di m automezzi con cui effettuare il trasporto.

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

Contabilità a costi standard

Contabilità a costi standard Cognome, nome e numero di candidato pagina 1 di 7 Contabilità a costi standard Waste AG produce bidoni per i rifiuti (prodotto ) ad uso privato e container per i rifiuti (prodotto ) destinati agli immobili

Dettagli

Il problema dello zaino

Il problema dello zaino Il problema dello zaino Programmazione Dinamica Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino 25 gennaio 2010 Il problema dello zaino 0-1

Dettagli

Stime dell ottimo - Rilassamenti. PRTLC - Rilassamenti

Stime dell ottimo - Rilassamenti. PRTLC - Rilassamenti Stime dell ottimo - Rilassamenti PRTLC - Rilassamenti Schema delle esercitazioni Come ricavare la soluzione ottima Modelli Solver commerciali Come ricavare una stima dell ottimo: rilassamenti Rilassamento

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 sono algoritmi basati sull idea di fare sempre scelte

Dettagli

Agli studenti delle classi prime

Agli studenti delle classi prime Agli studenti delle classi prime Ti consigliamo di svolgere durante il.periodo estivo i seguenti esercizi che hanno lo scopo di consolidare le conoscenze e i concetti fondamentali affrontati nella Scuola

Dettagli

RISOLUZIONI. 3 Risoluzione. valore ottenuto. 25 x valore massimo

RISOLUZIONI. 3 Risoluzione. valore ottenuto. 25 x valore massimo INSIEME Q RISOLUZIONI QS) Sull asse dei numeri razionali Q le unità sono suddivise in parti uguali. a) Inserisci sull asse i numeri, segnandoli con la lettera indicata per ciascuno di essi A B C 0, D,

Dettagli

Corso di Laurea in Scienze dell Architettura Modulo di Analisi Matematica

Corso di Laurea in Scienze dell Architettura Modulo di Analisi Matematica Corso di Laurea in Scienze dell Architettura Modulo di Analisi Matematica 62,5 ore di lezione frontale mariannasaba@unica.it Orario lezioni: Lunedì ore 11:15-13:00 Giovedì ore 15:00-16:45 Venerdì ore 8:15-10:00

Dettagli

A UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 15 giugno 2012

A UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 15 giugno 2012 A UNIVRSITÀ GLI STUI ROMA TR orso di Studi in Ingegneria Informatica Ricerca Operativa Seconda prova intermedia 5 giugno 22 sercizio L azienda rogram&o produce software e deve decidere quanto tempo impiegare

Dettagli

Esercizio 1. Esercizio 2

Esercizio 1. Esercizio 2 Esercizio 1 Si scriva un programma C che realizza l'assegnazione ottima di un insieme di persone ad un insieme di città avente la stessa cardinalità. Ogni persona ha espresso una serie di preferenze, elencando

Dettagli

Analisi Matematica I per Ingegneria Gestionale, a.a Secondo compitino e primo appello, 15 gennaio 2018 Testi 1

Analisi Matematica I per Ingegneria Gestionale, a.a Secondo compitino e primo appello, 15 gennaio 2018 Testi 1 Secondo compitino e primo appello, 5 gennaio 8 Testi Prima parte, gruppo.. Calcolare la velocità (intesa come vettore) e il modulo della velocità di un punto che si muove nel piano con la seguente legge

Dettagli