TSP con eliminazione di sottocicli
|
|
- Alessia Annabella Arcuri
- 8 anni fa
- Visualizzazioni
Transcript
1 TSP con eliminazione di sottocicli Un commesso viaggiatore deve visitare 7 clienti in modo da minimizzare la distanza percorsa. Le distanze (in Km) tra ognuno dei clienti sono come segue: (la matrice delle distanze è simmetrica). Formulare un modello di PLI e proporre un programma in AMPL che risolva il problema. Approfondimento (opzionale) Si parli di un possibile approccio euristico per la soluzione del TSP, considerando che sulla matrice delle distanze vale la disuguaglianza triangolare. Documento preparato da Leo Liberti
2 Soluzione Formalizziamo il problema come un grafo diretto completo G(V, A) dove V sono i clienti e A sono tutti gli archi possibili tra i nodi in V. I pesi sugli archi sono le distanze tra i clienti. Si deve cercare un cammino di peso minimo che tocchi tutti i nodi una e una sola volta. Formulazione Parametri:. sia V l insieme dei clienti da visitare;. per ogni i, j V sia d ij la distanza tra il cliente i e il cliente j. Variabili: per ogni i j V, sia x ij = se il commesso viaggia direttamente tra i e j, e altrimenti (x ij {, ). Funzione obiettivo: min i j V d ij x ij. Vincoli: x ij = i V (solo un successore) j V,j i i V,i j i S,j V \S x ij = j V (solo un predecessore) x ij S V (nessun sottociclo) x ij {, i j V. L ultimo vincolo dice che per ogni partizione dei vertici, ci dev essere almeno un arco nel taglio corrispondente. Questo impedisce la formazione di sottocicli non triviali (che ovviamente definirebbero una partizione dei vertici con un taglio associato vuoto). Dato che il numero dei sottoinsiemi propri S di un insieme V è un numero esponenziale nella cardinalità di V, la dimensione di un istanza del problema esposto sopra è esponenziale (e dunque non accettabile). Bisogna dunque adottare un opportuna strategia di soluzione. Inizialmente, il problema viene rilassato cancellando completamente il vincolo nessun sottociclo (in tal modo la dimensione dell istanza è polinomiale). Il rilassamento ottenuto viene risolto tramite le comuni tecniche di PLI. La soluzione trovata può non essere ammissibile per il vincolo nessun sottociclo : ovvero, potrebbero esserci dei sottocicli non banali. Cerchiamo quindi il sottociclo più piccolo, inseriamo nel problema rilassato un solo vincolo della classe di vincoli nessun sottociclo in modo che il sottociclo trovato venga rotto, e ri-ottimizziamo il problema. Si continua iterativamente finché la soluzione non presenta più alcun sottociclo. A quel punto la soluzione trovata è quella ottima. Documento preparato da Leo Liberti
3 Tentiamo prima un approccio manuale alla generazione dei cicli da rompere. Risolviamo prima il modello seguente. Modello AMPL # modello per tsp param n >, integer; set V :=..n; param d{v,v >= ; param numerocicli >=, integer, default ; set ciclo{..numerocicli; var x{v,v binary; minimize costociclo : sum{i in V, j in V : i!= j d[i,j]*x[i,j]; subject to successore {i in V : sum{j in V : i!= j x[i,j] = ; subject to predecessore {j in V : sum{i in V : i!= j x[i,j] = ; subject to nocicli {k in..numerocicli : sum{i in ciclo[k], j in V diff ciclo[k] x[i,j] >= ; Dati AMPL # tsp.dat param n := 7; param d : 7 := ; Per risolverlo, usiamo il seguente file.run, in cui si inizializza la matrice delle distanze in modo che sia simmetrica. Algoritmo AMPL: file tsp-simple.run # leggi modello e dati model tsp.mod; data tsp.dat; # rendi simmetrica la matrice delle distanze for {i in V, j in V : i > j { let d[i,j] := d[j,i]; # risolvi option solver cplex; solve; # stampa display costociclo; display x; Si noti che siccome ciclo e inizializzato a una lista di insiemi vuoti, i vincoli di rottura dei sottocicli di fatto non sono stati inseriti. Otteniamo la soluzione seguente, che corrisponde infatti a tre cicli distinti: (,,, ), (,, ) e (, 7, ). Soluzione CPLEX (non ottima) Documento preparato da Leo Liberti
4 costociclo = 7 x [*,*] : 7 := 7 ; In pratica, abbiamo la situazione come nella figura qui sotto. 7 Aggiungiamo perciò un vincolo di rottura del sottociclo (,,, ) al modello: per S = {,, si impone i S,j V \S x ij. In AMPL, è sufficiente aggiungere le istruzioni seguenti nel file tsp-simple.run, prima dell istruzione solve;, e risolvere nuovamente il modello lanciando ampl < tsp-simple.run. let numerocicli := ; let ciclo[] := {,, ; Si ottiene la soluzione seguente, che essendo un ciclo Hamiltoniano, è ottima. Soluzione CPLEX (ottima) costociclo = x [*,*] : 7 := 7 ; La ciclo Hamiltoniano ottimo è (,,, 7,,,, ), raffigurato sotto. In generale, la soluzione non è unica (possono esistere più cicli Hamiltoniani con lo stesso costo), quindi si potrebbe trovare una soluzione diversa da questa. 7 Documento preparato da Leo Liberti
5 Descriviamo ora un algoritmo in AMPL per la generazione automatica dei sottocicli da rompere (per eseguirlo, usare il comando ampl < tsp.run). Algoritmo AMPL: file tsp.run # tsp.run - algoritmo per la rottura dei sottocicli # usa cplex e non stampare i messaggi del solutore numerico option solver cplex; option solver_msg ; # leggi modello e dati model tsp.mod; data tsp.dat; let numerocicli := ; # strutture dati per l algoritmo param nodosuccessore{v >=, integer; param nodocorrente >=, integer; # rendi simmetrica la matrice delle distanze for {i in V, j in V : i > j { let d[i,j] := d[j,i]; # algoritmo: risolvi il modello senza vincoli di rottura # dei sottocicli, trova un sottociclo, aggiungi il vincolo # corrispondente, e quando non esistono piu sottocicli propri, esci param termination binary; let termination := ; repeat while (termination = ) { # risolvi il problema solve; let numerocicli := numerocicli + ; # trova i successori di ogni nodo for {i in V { let nodosuccessore[i] := sum{j in V : j!= i j * x[i,j]; # trova un sottociclo let nodocorrente := ; let ciclo[numerocicli] := {; repeat { let ciclo[numerocicli] := ciclo[numerocicli] union {nodocorrente; let nodocorrente := nodosuccessore[nodocorrente]; until (nodocorrente = ); # stampa il sottociclo che vogliamo rompere printf "ciclo: ("; for {i in ciclo[numerocicli] { printf "%d, ", i ; printf ")\n"; # verifica se si puo terminare if (card(ciclo[numerocicli]) >= n) then { # se il sottociclo include tutti i nodi e Hamiltoniano, esci let termination := ; Documento preparato da Leo Liberti
6 printf "costo del ciclo hamiltoniano minimo: %d\n", costociclo; Soluzione numerica ciclo: (,,, ) ciclo: (,,, 7,,,, ) costo del ciclo hamiltoniano minimo: Documento preparato da Leo Liberti
7 Approfondimento: Soluzione Euristica Per la soluzione euristica, si consideri l euristica -approssimata per il TSP Euclideo (cioè la cui matrice delle distanze rispetta la disuguaglianza triangolare) ideata da Christofides. L euristica costruisce un ciclo Hamiltoniano nel modo seguente.. Si costruisce l albero di supporto di costo minimo T nel grafo G.. Si costruisce il matching M di costo minimo tra i vertici del grafo con cardinalità dispari.. Si forma un ciclo Euleriano che consiste dell unione di T e M. Si noti che ogni nodo ha un numero pari di lati adiacenti.. Per ogni vertice v tale che δ(v) (T M) > (ovvero per ogni v da cui si dipartono più di lati di T e M), si contraggono tutte le coppie di lati adiacenti a v tranne una. L operazione di contrazione di una coppia di lati {u, v, {v, w consiste nel sostituire questi lati con il lato {u, w (l operazione è sempre possibile perché il grafo è completo). Effettuando quest operazione per tutte le coppie di lati adiacenti a v tranne una, si rispettano i vincoli di predecessore e successore, perché v a quel punto avrà esattamente lati adiacenti. Applichiamo l euristica descritta all istanza in questione. Le figure sotto rappresentano: il grafo originale, l albero di supporto di costo minimo, il matching di costo minimo tra vertici di stella con cardinalità dispari, e l unione dei due a formare un ciclo Euleriano. Si noti tuttavia che in questa particolare istanza tutti i nodi hanno già grado, quindi il ciclo è già Hamiltoniano. Il costo del ciclo ottenuto con quest euristica è, e quindi in questo caso l euristica trova un ciclo Hamiltoniano di costo minimo. / / 9 original graph / 9 / 7 / 7 7 / / 8 / 8 / 8 / 9 / 7 / 9 / 7 / 9 8 / 8 9 / 9 / 8 9 / / / Figure : Il grafo originale. Documento preparato da Leo Liberti 7
8 / / 9 sptree cost = 8 / 9 / 7 / 7 7 / / 8 / 8 / 8 / 9 / 7 / 9 / 7 / 9 8 / 8 9 / 9 / 8 9 / / / Figure : L albero di costo minimo. / / 9 matching cost: 9 / 9 / 7 / 7 7 / / 8 / 8 / 8 / 9 / 7 / 9 / 7 / 9 8 / 8 9 / 9 / 8 9 / / / Figure : Il matching di costo minimo tra vertici di grado dispari. Documento preparato da Leo Liberti 8
9 / / 9 tour cost: / 9 / 7 / 7 7 / / 8 / 8 / 8 / 9 / 7 / 9 / 7 / 9 8 / 8 9 / 9 / 8 9 / / / Figure : Unione di albero e matching (soluzione approssimata). / / 9 optimal tour cost: / 9 / 7 / 7 7 / / 8 / 8 / 8 / 9 / 7 / 9 / 7 / 9 8 / 8 9 / 9 / 8 9 / / / Figure : La soluzione ottimale (uguale, in questo caso, a quella approssimata). Documento preparato da Leo Liberti 9
TSP con eliminazione di sottocicli
TSP con eliminazione di sottocicli Un commesso viaggiatore deve visitare 7 clienti in modo da minimizzare la distanza percorsa. Le distanze (in Km) tra ognuno dei clienti sono come segue: 3 5 7-8 9 57
DettagliProblema del Trasporto. Container vuoti Verona 10 Perugia 12 Roma 20 Pescara 24 Taranto 18 Lamezia 40
Problema del Trasporto Una ditta di trasporto deve trasferire container vuoti dai propri 6 Magazzini, situati a Verona, Perugia, Roma, Pescara, Taranto e Lamezia, ai principali Porti nazionali (Genova,
DettagliSono casi particolari di MCF : SPT (cammini minimi) non vi sono vincoli di capacità superiore (solo x ij > 0) (i, j) A : c ij, costo di percorrenza
Il problema di flusso di costo minimo (MCF) Dati : grafo orientato G = ( N, A ) i N, deficit del nodo i : b i (i, j) A u ij, capacità superiore (max quantità di flusso che può transitare) c ij, costo di
Dettaglib i 1,1,1 1,1,1 0,1,2 0,3,4
V o Appello // RICERCA OPERATIVA - Corso A (a.a. 9/) Nome Cognome: Corso di Laurea: L C6 LS LM Matricola: ) Si consideri il problema di flusso di costo minimo in figura. Si verifichi se il flusso ammissibile
DettagliPianificazione di Produzione in DEC
Pianificazione di Produzione in DEC L esempio considerato qui è un problema reale che la Digital Equipment Corporation (DEC) ha dovuto affrontare nell autunno del 1988 per preparare la pianificazione di
DettagliProblema della produzione dei monitor
Problema della produzione dei monitor Una azienda produce monitor per PC in tre diversi stabilimenti. Il costo di produzione di ciascun monitor varia a causa della diversa efficienza produttiva degli stabilimenti.
DettagliOttimizzazione Multi Obiettivo
Ottimizzazione Multi Obiettivo 1 Ottimizzazione Multi Obiettivo I problemi affrontati fino ad ora erano caratterizzati da una unica (e ben definita) funzione obiettivo. I problemi di ottimizzazione reali
Dettagli3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Scopo: Stimare l onere computazionale per risolvere problemi di ottimizzazione e di altra natura
DettagliIl Metodo Branch and Bound
Il Laura Galli Dipartimento di Informatica Largo B. Pontecorvo 3, 56127 Pisa laura.galli@unipi.it http://www.di.unipi.it/~galli 4 Novembre 2014 Ricerca Operativa 2 Laurea Magistrale in Ingegneria Gestionale
DettagliMATEMATICA DEL DISCRETO elementi di teoria dei grafi. anno acc. 2009/2010
elementi di teoria dei grafi anno acc. 2009/2010 Grafi semplici Un grafo semplice G è una coppia ordinata (V(G), L(G)), ove V(G) è un insieme finito e non vuoto di elementi detti vertici o nodi di G, mentre
DettagliProblema del trasporto
p. 1/1 Problema del trasporto Supponiamo di avere m depositi in cui è immagazzinato un prodotto e n negozi che richiedono tale prodotto. Nel deposito i è immagazzinata la quantità a i di prodotto. Nel
DettagliOttimizzazione Combinatoria
Ottimizzazione Combinatoria Esercitazione AMPL A.A. 2009-2010 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma1.it Università di Roma La Sapienza Dipartimento di Informatica e
Dettagli1 Breve introduzione ad AMPL
1 Breve introduzione ad AMPL Il primo passo per risolvere un problema reale attraverso strumenti matematici consiste nel passare dalla descrizione a parole del problema al modello matematico dello stesso.
DettagliIntroduzione. AMPL Introduzione. F. Rinaldi. Dipartimento di Matematica Università di Padova. Corso di Laurea Matematica. F. Rinaldi AMPL Introduzione
Dipartimento di Matematica Università di Padova Corso di Laurea Matematica Outline Introduzione Utilizzo di un Solver Definizione Un solver (o risolutore) è un software che riceve in input una descrizione
DettagliIntelligenza Artificiale
Intelligenza Artificiale Esercizi e Domande di Esame Tecniche di Ricerca e Pianificazione Esercizi Griglia Si consideri un ambiente costituito da una griglia n n in cui si muove un agente che può spostarsi
DettagliIntroduzione al MATLAB c Parte 2
Introduzione al MATLAB c Parte 2 Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 18 gennaio 2008 Outline 1 M-file di tipo Script e Function Script Function 2 Costrutti di programmazione
DettagliEsercizi Capitolo 6 - Alberi binari di ricerca
Esercizi Capitolo 6 - Alberi binari di ricerca Alberto Montresor 23 settembre 200 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile
DettagliRicerca Automatica. Esercitazione 3. Ascensore. Ascensore. Ascensore
Ascensore Ricerca Automatica Esercitazione In un grattacielo ci sono coppie formate da marito e moglie. Il cancello delle scale viene chiuso e l unico modo per scendere è con l ascensore che può portare
DettagliPROVA FINALE V. AULETTA G. PERSIANO ALGORITMI II - -MAGIS INFO
PROVA FINALE V. AULETTA G. PERSIANO ALGORITMI II - -MAGIS INFO 1. Load Balancing Un istanza del problema del load balancing consiste di una sequenza p 1,..., p n di interi positivi (pesi dei job) e un
DettagliTeoria in sintesi 10. Attività di sportello 1, 24 - Attività di sportello 2, 24 - Verifica conclusiva, 25. Teoria in sintesi 26
Indice L attività di recupero 6 Funzioni Teoria in sintesi 0 Obiettivo Ricerca del dominio e del codominio di funzioni note Obiettivo Ricerca del dominio di funzioni algebriche; scrittura del dominio Obiettivo
Dettagli1. Considerazioni generali
1. Considerazioni generali Modelli di shop scheduling In molti ambienti produttivi l esecuzione di un job richiede l esecuzione non simultanea di un certo numero di operazioni su macchine dedicate. Ogni
DettagliSistemi Operativi mod. B. Sistemi Operativi mod. B A B C A B C P 1 2 0 0 P 1 1 2 2 3 3 2 P 2 3 0 2 P 2 6 0 0 P 3 2 1 1 P 3 0 1 1 < P 1, >
Algoritmo del banchiere Permette di gestire istanze multiple di una risorsa (a differenza dell algoritmo con grafo di allocazione risorse). Ciascun processo deve dichiarare a priori il massimo impiego
DettagliGestione Impresa. Mese 1 2 3 4 5 6 Unità richieste 700 600 500 800 900 800
Gestione Impresa Un impresa di produzione produce un solo tipo di merce. Ci sono 40 operai, ciascuno dei quali produce 20 unità di merce al mese. La domanda fluttua nel corso di un semestre secondo la
DettagliLaboratorio di Programmazione II Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona
e e Laboratorio di Programmazione II Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona Sommario e ed implementazione in Java Visita di un grafo e e Concetti di base Struttura
DettagliRicerca Operativa A.A. 2007/2008
Ricerca Operativa A.A. 2007/2008 9. Cenni su euristiche e metaeuristiche per ottimizzazione combinatoria Motivazioni L applicazione di metodi esatti non è sempre possibile a causa della complessità del
DettagliCapitolo 5: Ottimizzazione Discreta. E. Amaldi DEI, Politecnico di Milano
Capitolo 5: Ottimizzazione Discreta E. Amaldi DEI, Politecnico di Milano 5.1 Modelli di PLI, formulazioni equivalenti ed ideali Il modello matematico di un problema di Ottimizzazione Discreta è molto spesso
DettagliScopo del laboratorio
p. 1/1 Scopo del laboratorio Imparare ad usare programmi che implementino metodi di ottimizzazione: simplesso, branch and bound ecc. utilizzarli per risolvere un problema proposto Modellatori Solver p.
DettagliMetodi e Modelli per l Ottimizzazione Combinatoria Il problema del flusso di costo minimo
Metodi e Modelli per l Ottimizzazione Combinatoria Il problema del flusso di costo minimo L. De Giovanni G. Zambelli 1 Problema del flusso a costo minimo Il problema del flusso a costo minimo é definito
DettagliSeconda Prova di Ricerca Operativa. Cognome Nome Numero Matricola A 1/12 A 2/12
A / A / Seconda Prova di Ricerca Operativa Cognome Nome Numero Matricola Nota: LA RISOLUZIONE CORRETTA DEGLI ESERCIZI CONTRADDISTINTI DA UN ASTERISCO È CONDIZIONE NECESSARIA PER IL RAGGIUNGIMENTO DELLA
DettagliESEMPIO P.L. : PIANIFICAZIONE DI INVESTIMENTI
ESEMPIO P.L. : PIANIFICAZIONE DI INVESTIMENTI PROBLEMA: un azienda deve scegliere fra due possibili investimenti al fine di massimizzare il profitto netto nel rispetto delle condizioni interne e di mercato
DettagliLinguaggi di modellizzazione
p. 1/5 Linguaggi di modellizzazione Come visto, il primo passo per risolvere un problema di decisione consiste nel formularne il modello matematico. Una volta definito il modello matematico lo dobbiamo
DettagliSPC e distribuzione normale con Access
SPC e distribuzione normale con Access In questo articolo esamineremo una applicazione Access per il calcolo e la rappresentazione grafica della distribuzione normale, collegata con tabelle di Clienti,
Dettagli40 Algoritmi sui Grafi
Università degli Studi di Napoli Parthenope Corso di Laurea in Informatica A.A 2014/15 PROGETTO PROGRAMMAZIONE III 40 Algoritmi sui Grafi Relatore: Prof. Raffaele Montella Studente: Diego Parlato Matricola:
DettagliH1 Hrms Gestione eventi/scadenze automatiche
Sintesi H1 Hrms Gestione eventi/scadenze automatiche Il presente documento nasce con lo scopo di illustrare la funzionalità all interno di H1 hrms relativa alla procedura di gestione degli eventi e delle
DettagliRicerca Operativa Esercizi sul metodo del simplesso. Luigi De Giovanni, Laura Brentegani
Ricerca Operativa Esercizi sul metodo del simplesso Luigi De Giovanni, Laura Brentegani 1 1) Risolvere il seguente problema di programmazione lineare. ma + + 3 s.t. 2 + + 2 + 2 + 3 5 2 + 2 + 6,, 0 Soluzione.
DettagliSequenziamento a minimo costo di commutazione in macchine o celle con costo lineare e posizione home (In generale il metodo di ottimizzazione
Sequenziamento a minimo costo di commutazione in macchine o celle con costo lineare e posizione home (In generale il metodo di ottimizzazione presentato in questo file trova la seq. a costo minimo per
DettagliProgetto di Reti di Telecomunicazione Modelli in Programmazione Lineare Problemi di flusso
Progetto di Reti di Telecomunicazione Modelli in Programmazione Lineare Problemi di flusso Flusso di costo minimo È dato un grafo direzionato G = (N, A). Ad ogni arco (i, j) A è associato il costo c ij
Dettaglimese 1 2 3 4 5 richiesta 6000 7000 8000 9500 11000
1.7 Servizi informatici. Un negozio di servizi informatici stima la richiesta di ore di manutenzione/consulenza per i prossimi cinque mesi: mese 1 2 3 4 5 richiesta 6000 7000 8000 9500 11000 All inizio
DettagliSchedulazione delle attività di un progetto in presenza di multi-calendari e di vincoli sulle risorse
Schedulazione delle attività di un progetto in presenza di multi-calendari e di vincoli sulle risorse Maria Silvia Pini Resp. accademico: Prof.ssa Francesca Rossi Università di Padova Attività FSE DGR
DettagliSTRUTTURE NON LINEARI
PR1 Lezione 13: STRUTTURE NON LINEARI Michele Nappi mnappi@unisa.it www.dmi.unisa.it/people/nappi Per la realizzazione della presentazione è stato utilizzato in parte materiale didattico prodotto da Oronzo
DettagliAlgoritmi e strutture dati. Codici di Huffman
Algoritmi e strutture dati Codici di Huffman Memorizzazione dei dati Quando un file viene memorizzato, esso va memorizzato in qualche formato binario Modo più semplice: memorizzare il codice ASCII per
Dettaglimin 4x 1 +x 2 +x 3 2x 1 +x 2 +2x 3 = 4 3x 1 +3x 2 +x 3 = 3 x 1 +x 2 3x 3 = 5 Innanzitutto scriviamo il problema in forma standard: x 1 x 2 +3x 3 = 5
IL METODO DEL SIMPLESSO 65 Esercizio 7.4.4 Risolvere utilizzando il metodo del simplesso il seguente problema di PL: min 4 + + + + = 4 + + = + = 5 Innanzitutto scriviamo il problema in forma standard:
DettagliRicerca Operativa e Logistica
Ricerca Operativa e Logistica Dott. F.Carrabs e Dott.ssa M.Gentili A.A. 20/202 Lezione 6-8 Rappresentazione di funzioni non lineari: - Costi fissi - Funzioni lineari a tratti Funzioni obiettivo non lineari:
DettagliAlgoritmo. I dati su cui opera un'istruzione sono forniti all'algoritmo dall'esterno oppure sono il risultato di istruzioni eseguite precedentemente.
Algoritmo Formalmente, per algoritmo si intende una successione finita di passi o istruzioni che definiscono le operazioni da eseguire su dei dati (=istanza del problema): in generale un algoritmo è definito
DettagliEsercizio 1 Dato il gioco ({1, 2, 3}, v) con v funzione caratteristica tale che:
Teoria dei Giochi, Trento, 2004/05 c Fioravante Patrone 1 Teoria dei Giochi Corso di laurea specialistica: Decisioni economiche, impresa e responsabilità sociale, A.A. 2004/05 Soluzioni degli esercizi
DettagliProgetto e ottimizzazione di reti 2
Progetto e ottimizzazione di reti 2 Esercitazione AMPL A.A. 29-2 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma.it Università di Roma La Sapienza Dipartimento di Informatica
DettagliProgrammazione dinamica
Capitolo 6 Programmazione dinamica 6.4 Il problema della distanza di edit tra due stringhe x e y chiede di calcolare il minimo numero di operazioni su singoli caratteri (inserimento, cancellazione e sostituzione)
DettagliIl problema del commesso viaggiatore
ITTS Vito Volterra Progetto ABACUS Ottimizzazione combinatoria Il problema del commesso viaggiatore Studente: Davide Talon Esame di stato 2013 Anno scolastico 2012-2013 Indice 1. Introduzione........................................
DettagliEsercizi di Ricerca Operativa I
Esercizi di Ricerca Operativa I Dario Bauso, Raffaele Pesenti May 10, 2006 Domande Programmazione lineare intera 1. Gli algoritmi per la programmazione lineare continua possono essere usati per la soluzione
DettagliBarriere assorbenti nelle catene di Markov e una loro applicazione al web
Università Roma Tre Facoltà di Scienze M.F.N Corso di Laurea in Matematica a.a. 2001/2002 Barriere assorbenti nelle catene di Markov e una loro applicazione al web Giulio Simeone 1 Sommario Descrizione
DettagliAppunti di Algoritmi e Strutture Dati. Grafi. Gianfranco Gallizia
Appunti di Algoritmi e Strutture Dati Grafi Gianfranco Gallizia 12 Dicembre 2004 2 Indice 1 Grafi 5 1.1 Definizione.............................. 5 1.2 Implementazione........................... 5 1.2.1
DettagliLa Programmazione Lineare
4 La Programmazione Lineare 4.1 INTERPRETAZIONE GEOMETRICA DI UN PROBLEMA DI PROGRAMMAZIONE LINEARE Esercizio 4.1.1 Fornire una rappresentazione geometrica e risolvere graficamente i seguenti problemi
DettagliProof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme
G Pareschi Principio di induzione Il Principio di Induzione (che dovreste anche avere incontrato nel Corso di Analisi I) consente di dimostrare Proposizioni il cui enunciato è in funzione di un numero
DettagliObiettivi dell esercitazione. Requisiti (cont.) Requisiti. Università di Roma La Sapienza A.A. 2008-2009. Facoltà di Ingegneria Sede di Latina
Università di Roma La Sapienza A.A. 2008-2009 Facoltà di Ingegneria Sede di Latina Laurea in Ingegneria Informatica ed Ingegneria dell Informazione Corso di PROGETTAZIONE DEL SOFTWARE Esercitazione sulla
Dettaglie-dva - eni-depth Velocity Analysis
Lo scopo dell Analisi di Velocità di Migrazione (MVA) è quello di ottenere un modello della velocità nel sottosuolo che abbia dei tempi di riflessione compatibili con quelli osservati nei dati. Ciò significa
DettagliMetodi Computazionali
Metodi Computazionali Elisabetta Fersini fersini@disco.unimib.it A.A. 2009/2010 Catene di Markov Applicazioni: Fisica dinamica dei sistemi Web simulazione del comportamento utente Biologia evoluzione delle
DettagliForze come grandezze vettoriali
Forze come grandezze vettoriali L. Paolucci 23 novembre 2010 Sommario Esercizi e problemi risolti. Per la classe prima. Anno Scolastico 2010/11 Parte 1 / versione 2 Si ricordi che la risultante di due
DettagliIL PROBLEMA DELLO SHORTEST SPANNING TREE
IL PROBLEMA DELLO SHORTEST SPANNING TREE n. 1 - Formulazione del problema Consideriamo il seguente problema: Abbiamo un certo numero di città a cui deve essere fornito un servizio, quale può essere l energia
DettagliAnno 3. Funzioni: dominio, codominio e campo di esistenza
Anno 3 Funzioni: dominio, codominio e campo di esistenza 1 Introduzione In questa lezione parleremo delle funzioni. Ne daremo una definizione e impareremo a studiarne il dominio in relazione alle diverse
DettagliNote del Corso di Modelli Biologici Discreti: Un paio di algoritmi DNA per risolvere SAT
Note del Corso di Modelli Biologici Discreti: Un paio di algoritmi DNA per risolvere SAT Giuditta Franco Corso di Laurea in Bioinformatica - AA 2012/2013 Uno dei più grossi risultati nell informatica degli
DettagliL espressione torna invece sempre vera (quindi la soluzione originale) se cambiamo contemporaneamente il verso: 1 < 0.
EQUAZIONI E DISEQUAZIONI Le uguaglianze fra espressioni numeriche si chiamano equazioni. Cercare le soluzioni dell equazione vuol dire cercare quelle combinazioni delle lettere che vi compaiono che la
Dettagli1. Sia dato un poliedro. Dire quali delle seguenti affermazioni sono corrette.
. Sia dato un poliedro. (a) Un vettore x R n è un vertice di P se soddisfa alla seguenti condizioni: x P e comunque presi due punti distinti x, x 2 P tali che x x e x x 2 si ha x = ( β)x + βx 2 con β [0,
DettagliCorrispondenze e funzioni
Corrispondenze e funzioni L attività fondamentale della mente umana consiste nello stabilire corrispondenze e relazioni tra oggetti; è anche per questo motivo che il concetto di corrispondenza è uno dei
DettagliCapitolo 3: Ottimizzazione Discreta. E. Amaldi DEIB, Politecnico di Milano
Capitolo 3: Ottimizzazione Discreta E. Amaldi DEIB, Politecnico di Milano 3.1 Modelli di PLI e PLMI Moltissimi problemi decisionali complessi possono essere formulati o approssimati come problemi di Programmazione
Dettagli- Trovare soluzione ottima primale ( con il simplesso o algoritmo analogo)
Se si ha un problema lineare e' possibile risolverlo in piu' modi (equivalenti ) - Trovare soluzione ottima primale ( con il simplesso o algoritmo analogo) - Trovare soluzione ottima duale (con il simplesso
DettagliAlgoritmi e Strutture Dati
Elementi di Programmazione Dinamica Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino Il problema La CMC produce automobili in uno stabilimento
DettagliAlgoritmo proposto. Maria Silvia Pini, Francesca Rossi, K. Brent Venable. Dipartimento di Matematica Pura e Applicata Università di Padova
Algoritmo proposto Maria Silvia Pini, Francesca Rossi, K. Brent Venable Dipartimento di Matematica Pura e Applicata Università di Padova Algoritmo proposto L agoritmo che proponiamo Parte da una soluzione
Dettagli1. PRIME PROPRIETÀ 2
RELAZIONI 1. Prime proprietà Il significato comune del concetto di relazione è facilmente intuibile: due elementi sono in relazione se c è un legame tra loro descritto da una certa proprietà; ad esempio,
DettagliEsame di Ricerca Operativa del 19/01/2016
Esame di Ricerca Operativa del 19/01/201 (Cognome) (Nome) (Matricola) Esercizio 1. Una banca offre ai suoi clienti diversi tipi di prestito: mutuo casa, credito auto, credito famiglia, che rendono un interesse
DettagliLaboratorio di Ricerca Operativa Cad Ingegneria Gestionale (BGER3 - I semestre) a.a. 2012-13 Homework n 33. Docente: Laura Palagi
Laboratorio di Ricerca Operativa Cad Ingegneria Gestionale (BGER3 - I semestre) a.a. 2012-13 Homework n 33 Docente: Laura Palagi Homework in Ricerca Operativa gruppo n 33 Turni del Personale Martina Conti
DettagliRicerca Operativa e Logistica
Ricerca Operativa e Logistica Dott. F.Carrabs e Dott.ssa M.Gentili A.A. 2011/2012 Lezione 10: Variabili e vincoli logici Variabili logiche Spesso nei problemi reali che dobbiamo affrontare ci sono dei
DettagliUn modello matematico di investimento ottimale
Un modello matematico di investimento ottimale Tiziano Vargiolu 1 1 Università degli Studi di Padova Liceo Scientifico Benedetti Venezia, giovedì 30 marzo 2011 Outline 1 Investimento per un singolo agente
DettagliMinimo Albero Ricoprente
Minimo lbero Ricoprente Pag. 1/20 Minimo lbero Ricoprente Il problema della definizione di un Minimo lbero Ricoprente trova applicazione pratica in diverse aree di studio, quali ad esempio la progettazione
DettagliVerifica della correttezza formale del numero di partita IVA
Verifica della correttezza formale del numero di partita IVA A tutti i soggetti che intraprendono un attività rilevante ai fini Iva (impresa, arte, professione), al momento della presentazione della dichiarazione
DettagliFondamenti di Ricerca Operativa
Politecnico di Milano Anno Accademico 2010/2011 Fondamenti di Ricerca Operativa Corso del Prof. Edoardo Amaldi Stefano Invernizzi Facoltà di Ingegneria dell Informazione Corso di Laurea Magistrale in Ingegneria
DettagliLe Macchine di Turing
Le Macchine di Turing Come è fatta una MdT? Una MdT è definita da: un nastro una testina uno stato interno un programma uno stato iniziale Il nastro Il nastro è infinito suddiviso in celle In una cella
Dettagli~ Copyright Ripetizionando - All rights reserved ~ http://ripetizionando.wordpress.com STUDIO DI FUNZIONE
STUDIO DI FUNZIONE Passaggi fondamentali Per effettuare uno studio di funzione completo, che non lascia quindi margine a una quasi sicuramente errata inventiva, sono necessari i seguenti 7 passaggi: 1.
DettagliSommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.
Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell
DettagliDaniela Lera A.A. 2008-2009
Daniela Lera Università degli Studi di Cagliari Dipartimento di Matematica e Informatica A.A. 2008-2009 Metodi Runge-Kutta In alcuni esempi precedenti sono stati presentati vari metodi monostep. Esiste
DettagliModelli di Programmazione Lineare. PRTLC - Modelli
Modelli di Programmazione Lineare PRTLC - Modelli Schema delle esercitazioni Come ricavare la soluzione ottima Modelli Solver commerciali Come ricavare una stima dell ottimo Rilassamento continuo - generazione
DettagliAmmortamento di un debito
Algoritmi e dintorni: Ammortamento di un debito: Ricerca del tasso Prof. Ettore Limoli Ammortamento di un debito In questa nostra trattazione non ci addentreremo in problemi di matematica finanziaria o
DettagliEsame di Ricerca Operativa del 19/01/2016
Esame di Ricerca Operativa del 9/0/06 (Cognome) (Nome) (Matricola) Esercizio. Una banca offre ai suoi clienti diversi tipi di prestito: mutuo casa, credito auto, credito famiglia, che rendono un interesse
DettagliUtilizzo delle formule in Excel
Utilizzo delle formule in Excel Excel è dotato di un potente motore di calcolo che può essere utilizzato per elaborare i dati immessi dagli utenti. I calcoli sono definiti mediante formule. Ogni formula
DettagliGuida all uso di Java Diagrammi ER
Guida all uso di Java Diagrammi ER Ver. 1.1 Alessandro Ballini 16/5/2004 Questa guida ha lo scopo di mostrare gli aspetti fondamentali dell utilizzo dell applicazione Java Diagrammi ER. Inizieremo con
DettagliAlgoritmi e Strutture Dati & Laboratorio di Algoritmi e Programmazione
Algoritmi e Strutture Dati & Laboratorio di Algoritmi e Programmazione Esercizi II parte Esercizio 1 Discutere la correttezza di ciascuna delle seguenti affermazioni. Dimostrare formalmente la validità
DettagliLE SUCCESSIONI 1. COS E UNA SUCCESSIONE
LE SUCCESSIONI 1. COS E UNA SUCCESSIONE La sequenza costituisce un esempio di SUCCESSIONE. Ecco un altro esempio di successione: Una successione è dunque una sequenza infinita di numeri reali (ma potrebbe
DettagliLaboratorio di Algoritmi e Strutture Dati
Laboratorio di Algoritmi e Strutture Dati Aniello Murano http://people.na.infn.it people.na.infn.it/~murano/ 1 Esercitazione di laboratorio: Problema del venditore Terza parte 2 1 Esercizio del venditore
DettagliIniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora:
Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora: G.C.D.( a d, b d ) = 1 Sono state introdotte a lezione due definizioni importanti che ricordiamo: Definizione
DettagliCrittografia. Primalità e Fattorizzazione. Corso di Laurea Specialistica. in Informatica
Crittografia Corso di Laurea Specialistica in Informatica Primalità e Fattorizzazione Alberto Leporati Dipartimento di Informatica, Sistemistica e Comunicazione Università degli Studi di Milano Bicocca
DettagliSommario della lezione
Universitá degli Studi di Salerno Corso di Algoritmi Prof. Ugo Vaccaro Anno Acc. 2014/15 p. 1/36 Sommario della lezione Ulteriori esempi di applicazione della Programmazione Dinamica Esempio di applicazione
DettagliEquilibrio bayesiano perfetto. Giochi di segnalazione
Equilibrio bayesiano perfetto. Giochi di segnalazione Appunti a cura di Stefano Moretti, Silvia VILLA e Fioravante PATRONE versione del 26 maggio 2006 Indice 1 Equilibrio bayesiano perfetto 2 2 Giochi
Dettaglix u v(p(x, fx) q(u, v)), e poi
0.1. Skolemizzazione. Ogni enunciato F (o insieme di enunciati Γ) è equisoddisfacibile ad un enunciato universale (o insieme di enunciati universali) in un linguaggio estensione del linguaggio di F (di
DettagliOttimizzazione nella gestione dei progetti Capitolo 4: la gestione dei costi (Programmazione multimodale): formulazioni
Ottimizzazione nella gestione dei progetti Capitolo 4: la gestione dei costi (Programmazione multimodale): formulazioni CARLO MANNINO Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica
DettagliModelli di programmazione lineare. Il metodo grafico è basato su linearità della funzione obiettivo linearità dei vincoli
Ricerca Operativa 2. Modelli di Programmazione Lineare Modelli di programmazione lineare Il metodo grafico è basato su linearità della funzione obiettivo linearità dei vincoli Sotto queste ipotesi (come
DettagliEsercizio su MT. Svolgimento
Esercizio su MT Definire una macchina di Turing deterministica M a nastro singolo e i concetti di configurazione e di transizione. Sintetizzare una macchina di Turing trasduttore che trasformi un numero
DettagliEsempio. Approssimazione con il criterio dei minimi quadrati. Esempio. Esempio. Risultati sperimentali. Interpolazione con spline cubica.
Esempio Risultati sperimentali Approssimazione con il criterio dei minimi quadrati Esempio Interpolazione con spline cubica. Esempio 1 Come procedere? La natura del fenomeno suggerisce che una buona approssimazione
DettagliProdotto Disponibilità Costo 1 3000 3 2 2000 6 3 4000 4. e rispettando le seguenti regole di composizione delle benzine:
1.1 Pianificazione degli investimenti. Una banca deve investire C milioni di Euro, e dispone di due tipi di investimento: (a) con interesse annuo del 15%; (b) con interesse annuo del 25%. Almeno 1 di C
DettagliAlberi binari di ricerca
Alberi binari di ricerca Definizione Visita dell albero inorder Ricerca Ricerca minimo, massimo e successore. Inserimento ed eliminazione di un nodo Problema del bilanciamento dell albero Albero binario
Dettaglirisulta (x) = 1 se x < 0.
Questo file si pone come obiettivo quello di mostrarvi come lo studio di una funzione reale di una variabile reale, nella cui espressione compare un qualche valore assoluto, possa essere svolto senza necessariamente
Dettaglif(x) = 1 x. Il dominio di questa funzione è il sottoinsieme proprio di R dato da
Data una funzione reale f di variabile reale x, definita su un sottoinsieme proprio D f di R (con questo voglio dire che il dominio di f è un sottoinsieme di R che non coincide con tutto R), ci si chiede
Dettagli