Lezione n°17 Prof.ssa Rossella Petreschi

Slides:



Advertisements
Presentazioni simili
TSP Traveling Salesman’s Problem Università di Camerino
Advertisements

ASD a.a.2010/2011- Lezione 12 Algoritmi e Strutture dati a.a.2010/2011 Prof.ssa Rossella Petreschi Backtracking/ Branch and Bound Lezione n°12.
© 2015 Giorgio Porcu - Aggiornamennto 01/12/2015 I STITUTO T ECNICO SECONDO BIENNIO T ECNOLOGIE E P ROGETTAZIONE Rappresentazione dell’ Informazione Sistemi.
Prof.ssa Rossella Petreschi Lezione del 5/12/2012 del Corso di Algoritmi e Strutture Dati Riferimenti: Capitolo 11 del testo Anany Levitin “The design.
La seguente matrice è una matrice delle distanze di un’istanza del problema del Commesso Viaggiatore. Calcolare un lower bound per il valore del ciclo.
Prof.ssa Rossella Petreschi Lezione del 3/12/2013 del Corso di Algoritmica GRAFI e PLANARITA’ Lezione n°15.
Algoritmi Avanzati a.a.2015/2016 Prof.ssa Rossella Petreschi
Lezione n°10 Prof.ssa Rossella Petreschi
Cammini minimi in grafi:
Inserzione e Cancellazione
Branch and Bound Lezione n°19 Prof.ssa Rossella Petreschi
Algoritmi e Strutture dati a.a.2010/2011 Prof.ssa Rossella Petreschi
Branch and Bound Lezione n°14 Prof.ssa Rossella Petreschi
Reti, flussi e tagli Lezione n°11
PIANIFICAZIONE DEI TRASPORTI La teoria dei grafi
Approssimazione Lezione n°20 Prof.ssa Rossella Petreschi
Lezione n°9 Prof.ssa Rossella Petreschi
Algoritmi Avanzati a.a.2013/2014 Prof.ssa Rossella Petreschi
La funzione Path e le forme a cespuglio
Algoritmi Avanzati Prof.ssa Rossella Petreschi
Lezione n°15 Prof.ssa Rossella Petreschi
Algoritmi Avanzati a.a.2014/2015 Prof.ssa Rossella Petreschi
Cammini minimi tra tutte le coppie
Il problema del cammino minimo
Algoritmi Avanzati a.a.2013/2014 Prof.ssa Rossella Petreschi
Lezione n°14 Reti di flusso Prof.ssa Rossella Petreschi
Algoritmi Avanzati a.a.2011/2012 Prof.ssa Rossella Petreschi
Algoritmi Avanzati Prof.ssa Rossella Petreschi
Algoritmi Avanzati a.a.2011/2012 Prof.ssa Rossella Petreschi
Lezione n°16 Abbinamento Prof.ssa Rossella Petreschi
Algoritmi e Strutture Dati
Usi (meno scontati) della visita DFS
Algoritmi approssimati
Programmazione Intera
Paths, tree and flowers Lezione n°14
K4 è planare? E K3,3 e K5 sono planari? Sì!
Approssimazione Lezione n°15 Prof.ssa Rossella Petreschi
per rappresentare grafi
Lezione n°11 Prof.ssa Rossella Petreschi
Lezione n°12 Prof.ssa Rossella Petreschi
Lezione n°16 Prof.ssa Rossella Petreschi
Lezione n°18 Prof.ssa Rossella Petreschi
Principali Algoritmi di Scheduling
Algoritmi e Strutture Dati
ABBINAMENTO Lezione n°13
Algoritmi e Strutture dati a.a.2010/2011 Prof.ssa Rossella Petreschi
Algoritmi e Strutture Dati
Algoritmi per il flusso nelle reti
Algoritmi per il flusso nelle reti
Branch and Bound Lezione n°18 Prof.ssa Rossella Petreschi
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Cammini di costo minimo su un grafo pesato
Schema generale, visita in ampiezza e profondità.
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Backtracking Lezione n°13 Prof.ssa Rossella Petreschi
Usi (meno scontati) della visita DFS
Algoritmi Avanzati Prof.ssa Rossella Petreschi
Algoritmi e Strutture dati a.a.2010/2011 Prof.ssa Rossella Petreschi
Algoritmi Avanzati a.a. 2010/11
Rette e segmenti.
Backtracking Lezione n°17 Prof.ssa Rossella Petreschi
Alberi di ricerca Lezione n°4
Esercizio Dato un albero binario, definiamo altezza minimale di un nodo v la minima distanza di v da una delle foglie del suo sottoalbero, definiamo invece.
Cammini minimi in grafi:
Grafi e problem solving
Algoritmi e Strutture dati a.a.2010/2011 Prof.ssa Rossella Petreschi
Il problema del flusso nelle reti
Corso di Fondamenti di Informatica
Transcript della presentazione:

Lezione n°17 Prof.ssa Rossella Petreschi Lezione del 3/12/2014 del Corso di Algoritmica

Il problema dell’assegnamento INPUT: n persone, n differenti lavori. Matrice dei costi C(nxn):il costo dell’assegnamento della persona i al lavoro j è la quantità C(i,j). PROBLEMA: assegnare n persone ad n lavori (ogni persona ad esattamente un lavoro, ogni lavoro ad esattamente una persona) in modo da rendere il costo totale dell’assegnamento il minore possibile. ALTRA FORMULAZIONE: Selezionare un elemento in ogni riga della matrice in modo tale che la somma degli elementi selezionati sia la più piccola possibile e nessuna coppia di elementi selezionati sia sulla stessa colonna. LOWER BOUND: Somma dei valori minimi sulle singole righe, che in generale non è una soluzione ammissibile. TECNICA: best-first branch and bound SOLUZIONE POLINOMIALE: metodo ungherese 2

Il problema della bisaccia INPUT: n elementi ciascuno di peso wi e valore vi e una bisaccia di capacità W. PROBLEMA: trovare la migliore scelta di elementi che non superando la capacità della bisaccia, ottimizzi il guadagno della scelta stessa. CONVENIENZA: Ordinare in modo non decrescente rispetto al rapporto valore/peso v1/w1 ≥ v2/w2 ≥ v3/w3 ≥…≥vn/wn UPPER BOUND: ub = Svk + (W-Swk)(vi+1/wi+1 ), k= 1,…i, i=1,…n TECNICA: best-first branch and bound 3

Ciclo Euleriano/ Ciclo Hamiltoniano CICLO EULERIANO passa per ogni arco del grafo una e una sola volta Proprietà strutturale G tutti i nodi di grado pari CICLO HAMILTONIANO passa per ogni nodo del grafo una e una sola volta Proprietà strutturale ???????? DODECAEDRO DI HAMILTON 4

Ciclo Hamiltoniano INPUT: G =(V,E) connesso, V=n PROBLEMA: trovare un (tutti) i cicli hamiltoniani di G, se esistono RAPPRESENTAZIONE: con t-ple di dimensione n (x1,x2,…xn), xi rappresenta l’i-esimo vertice visitato nel ciclo proposto VINCOLI ESPLICITI: la t-pla è una permutazione VINCOLI IMPLICITI: (xi xi+1 ) deve essere un arco Per evitare di generare più volte uno stesso ciclo, assumiamo che il primo elemento della permutazione sia sempre il vertice 1 del grafo 5

Il problema del commesso viaggiatore IL NOME: data una rete di città, connesse tramite delle strade, trovare il percorso di minore lunghezza che un commesso viaggiatore deve seguire per visitare tutte le città una e una sola volta. IL MODELLO: un grafo pesato i cui nodi rappresentano le città, gli archi le strade fra le città e i pesi sugli archi la distanza fra le due città in considerazione. PROBLEMA: trovare il ciclo di minor peso (minor lunghezza) che passi per tutti i nodi una e una sola volta. CONFRONTO: la differenza con il circuito hamiltoniano è che qui il grafo è pesato LOWER BOUND 1: lb = distanza minima fra tutte le città moltiplicata per n LOWER BOUND 2: lb = Ssi /2, 1≤i≤n, dove si è la somma delle distanze dalla città i alle due città ad essa più vicine 6