2.2 Alberi di supporto di costo ottimo
|
|
|
- Tommasa Vecchio
- 8 anni fa
- Visualizzazioni
Transcript
1 . Alberi di supporto di costo ottimo Problemi relativi ad alberi hanno numerose applicazioni: progettazione di reti (comunicazione, teleriscaldamento,...) memorizzazione compatta di sequenze (DNA) diffusione di messaggi segreti... E. Amaldi Fondamenti di R.O. Politecnico di Milano
2 .. Problema e algoritmo di Prim Esempio Progettazione di una rete di comunicazione che colleghi n città (uffici) a costo minimo n = Modello: Grafo G = (N, E) con n = N, m = E e una funzione di costo c : E c e R, con e = [v,w] E E. Amaldi Fondamenti di R.O. Politecnico di Milano
3 Proprietà: ) Ogni coppia di città deve poter comunicare sottografo connesso che contiene tutti i nodi ) Costo minimo sottografo senza cicli Problema Dato un grafo G = (N, E) e una funzione di costo, determinare un albero di supporto di costo minimo: min T X e T c e dove X è l insieme di tutti gli alberi di supporto E. Amaldi Fondamenti di R.O. Politecnico di Milano
4 Teorema A. Cayley ( 889 ) Il numero di alberi di supporto in un grafo completo con n nodi è pari a n n-, per n. Esempio per n = : Richiamo: un albero con n nodi ha n lati E. Amaldi Fondamenti di R.O. Politecnico di Milano
5 E. Amaldi Fondamenti di R.O. Politecnico di Milano 9 Alcune soluzioni ammissibili: * S = {} T=Ø G Esempio algoritmo di Prim S = {, } * T={[,]} S T
6 S = {, } S = {,, } T * * T S = {,,, } T * S = N T costo: 9 E. Amaldi Fondamenti di R.O. Politecnico di Milano
7 Algoritmo di Prim input output G = (N, E) connesso con una funzione di costo Insieme di lati T E tale che G T = (N, T) è un albero di supporto di G BEGIN T:= ; S:={}; WHILE T < n- DO /* un albero con n nodi ha n- lati */ individuare [v,h] δ(s) di costo minimo, con v S e h N \ S; T := T {[v,h]}; S := S {h}; END-WHILE END E. Amaldi Fondamenti di R.O. Politecnico di Milano 7
8 L algoritmo di Prim è di tipo greedy (ingordo) : ad ogni passo si compie la scelta localmente migliore senza rimettere in discussione le scelte precedenti. N.B.: pochi problemi di ottimizzazione ammettono algoritmi greedy esatti, cioè che forniscono sempre una soluzione ottima E. Amaldi Fondamenti di R.O. Politecnico di Milano 8
9 .. Implementazione di Prim in O(n ) Struttura dati: k = numero di lati finora selezionati Sottoinsieme T E dei lati selezionati Sottoinsieme S V dei nodi incidenti ai lati selezionati. E. Amaldi Fondamenti di R.O. Politecnico di Milano 9
10 C[j] = min {c ij : i S } j S ; se [i,j] E, c ij =+ S j S C[j]= pred[j]= pred[ j ] = i% tale che c% = min{ c : }, ij ij i S j S predecessore di j nell albero minimo, j S E. Amaldi Fondamenti di R.O. Politecnico di Milano 0
11 taglio δ(s) = {[,], [,], [,], [,], [,]} S = {, } T = {[,]} pred[]:= C[]:=c = ( poiché [,] non esiste ) pred[]:= C[]:=c = ( poiché c < c ) pred[]:= C[]:=c = ( poiché c = c ) pred[]:= Poiché C[]=c C[]=c, C[]=c allora h:=; pred[h]:=; S:=S {}; T:=T {[,]} ecc E. Amaldi Fondamenti di R.O. Politecnico di Milano
12 Algoritmo di Prim in O(n ) BEGIN T := ; S := {}; /* inizializzazione */ FOR j:= TO n DO /* nodi j S */ C[j] := c j ; pred[j] := ; se [,j] E, c j = + END-FOR FOR k:= TO n DO /* selezionare n lati albero */ min := + ; FOR j:= TO n DO /* scegliere lato min in δ(s) */ IF j S AND (C[j] < min) THEN min := C[j]; h := j; END-IF END-FOR S := S {h}; T := T {[pred[h],h]}; /* estendere S e T */ FOR j:= TO n DO /* aggiornare C[j] e pred[j] j S */ IF j S AND (c hj < C[j]) THEN C[j] := c hj ; pred[j] := h; END-IF END-FOR END-FOR END E. Amaldi Fondamenti di R.O. Politecnico di Milano
13 Esempio S = {} * T ={[,]} C = (+,,,, ) T = C = (+,,,, ) pred = (,,,, ) pred = (,,,, ) * S = {, } S = {,, } ecc... * T = {[,], [,]} C = (+,,,, ) pred = (,,,, ) E. Amaldi Fondamenti di R.O. Politecnico di Milano
14 Un albero di supporto di costo minimo è definito dai n- lati [ pred[j], j ] con j =,..., n Esempio: Poiché pred =(,,,,) un albero di supporto ottimo è costituito dai lati: [,], [,], [,] e [,] costo: 9 T E. Amaldi Fondamenti di R.O. Politecnico di Milano
15 Complessità BEGIN <inizio> FOR j:= TO n DO (...) END-FOR inizializzazione richiede O(n) FOR k:= TO n DO FOR j:= TO n DO (...) END-FOR FOR j:= TO n DO (...) END-FOR END-FOR END i due cicli FOR interni richiedono O(n) ciascuno essi vengono eseguiti n - volte in un ciclo esterno Complessità totale: O(n ) E. Amaldi Fondamenti di R.O. Politecnico di Milano
16 Per grafi sparsi, ove m << n(n-)/, si può usare una struttura dati più sofisticata che consente di ridurre la complessità a O(m log n). E. Amaldi Fondamenti di R.O. Politecnico di Milano
17 .. Esattezza dell algoritmo di Prim L algoritmo di Prim è esatto, cioè fornisce sempre un albero di supporto di costo minimo. N.B. L esattezza non dipende dalla scelta del primo nodo e del lato di costo minimo selezionato in caso ve ne siano più di uno in δ(s). Mostreremo che ogni lato selezionato è contenuto in un albero ottimo. E. Amaldi Fondamenti di R.O. Politecnico di Milano 7
18 Lati di diminuzione Sia T un albero di supporto, un lato e T è detto di diminuzione se aggiungendolo a T si crea un ciclo C T {e} ed esiste un lato f C \ {e} con c e < c f f C e c e < c f T c (T {e} \ {f} ) < c(t) = c e ' e ' T E. Amaldi Fondamenti di R.O. Politecnico di Milano 8
19 Proprietà degli alberi ottimi Se un albero T * è ottimo, non esistono lati di diminuzione c e c f per ogni f C \ {e} f e T* Altrimenti si potrebbe diminuire il costo di T * scambiando il lato e di diminuzione con qualsiasi f di C con c e < c f! E. Amaldi Fondamenti di R.O. Politecnico di Milano 9
20 Proposizione Sia S N e un lato e = [v,h] δ (S) di costo minimo, allora esiste un albero ottimo che contiene e. Dim. Per assurdo: Sia T * E un albero ottimo con e T * S v f e h T * Aggiungendo e ciclo C Sia f δ(s) C Se c e =c f allora T* {e} \ {f} ottimo perché stesso costo di T* Se c e < c f, e è un lato di diminuzione quindi T* non è ottimo! E. Amaldi Fondamenti di R.O. Politecnico di Milano 0
21 .. Algoritmo di Kruskal input G = (N, E) e una funzione di costo output Insieme di lati T * E t.c. G T* = (N, T * ) è un albero di supporto di G Idea: ordinare i lati secondo i costi non decrescenti e aggiungere i lati a condizione che non creino cicli. E. Amaldi Fondamenti di R.O. Politecnico di Milano
22 E. Amaldi Fondamenti di R.O. Politecnico di Milano Esempio costo: 9 [,], [,], [,], [,], [,], [,],...
23 Algoritmo di Kruskal BEGIN ordinare i lati di G secondo costi non decrescenti; T* := ; WHILE T* < (n-) DO scegliere un lato e E di costo minimo; E := E \ {e}; IF T* {e} non ha cicli THEN T* := T* {e}; END-WHILE END E. Amaldi Fondamenti di R.O. Politecnico di Milano
24 Complessità ordinamento m lati: O(m log m) log m < log n = log n O(m log n) verifica se un lato crea un ciclo: in tempo costante perché basta controllare che i due estremi appartengano a due componenti connesse (c.c.) diverse ogni aggiornamento delle etichette delle c.c.: O(n) complessità totale: O(m log n + n ) O(n ) N.B. la complessità può essere ridotta utilizzando una struttura dati più sofisticata E. Amaldi Fondamenti di R.O. Politecnico di Milano
25 Condizione di ottimalità Un albero T è ottimo se e solo se non esistono lati di diminuzione. Dim. ( ) Se esiste un lato di diminuzione, allora T non è ottimo ( proprietà degli alberi ottimi ) ( ) Se non esiste un lato di diminuzione, allora T è ottimo con operazioni di scambio si può trasformare T * ottimo fornito dall algoritmo di Prim in T senza modificare il costo, T èquindi ottimo E. Amaldi Fondamenti di R.O. Politecnico di Milano
26 ( ) Se per un albero T non esistono lati di diminuzione allora T è ottimo Mostriamo che con semplici operazioni di scambio si può trasformare l albero ottimo T* fornito dall algoritmo di Prim in T senza modificare il costo. Supponiamo che l lati di T* non appartengano a T e mostriamo come con una operazione di scambio si può trasformare T* in un albero con lo stesso costo di T* ma con l - lati che non appartengono a T. Applicando l tali operazioni si ottiene un albero identico a T con c(t )=c(t*), T è quindi ottimo. E. Amaldi Fondamenti di R.O. Politecnico di Milano
27 Sia a, b, c, d i lati di T * (selezionati dall algo. di Prim) che appartengono anche a T ed e il primo t.c. e T * \T T * a c e b C ϕ d e T Sia C T {e} il ciclo creato aggiungendo e a T Esiste un lato e T \T *, e C ed e adiacente a uno dei lati in comune La scelta nell algoritmo di Prim: c e c e c e = c e L assenza di lati di diminuzione: c e c e Ripetendo T* T* {e } \{e} si verifica dopo l scambi che c(t) = c(t*). E. Amaldi Fondamenti di R.O. Politecnico di Milano 7
28 L algoritmo di Kruskal è esatto Ogni lato e T * (albero di supporto ottenuto) è stato scartato perché creava un ciclo Inoltre c e costo di tutti i lati di quel ciclo, poiché i lati sono esaminati secondo costi non decrescenti l albero di supporto ottenuto soddisfa la condizione di ottimalità e quindi è di costo minimo cioè non esistono lati di diminuzione E. Amaldi Fondamenti di R.O. Politecnico di Milano 8
29 Verifica ottimalità La condizione di ottimalità permette di verificare se un dato albero di supporto G T è effettivamente ottimo: G=(N,E) G T =(N,T) e c(t)=9 basta verificare che ogni lato e E \ T non è un lato di diminuzione. E. Amaldi Fondamenti di R.O. Politecnico di Milano 9
30 .. Applicazione indiretta Diffusione ottimale di un messaggio: Data una rete di comunicazione G = (N, E) ove i lati [i, j] E indicano quali coppie di nodi possono comunicare direttamente. Si conosce la probabilità p ij, 0 p ij, di intercettazione di un messaggio lungo ogni lato [i, j] E Problema Come trasmettere a tutti i nodi un messaggio segreto minimizzando la probabilità che sia intercettato? E. Amaldi Fondamenti di R.O. Politecnico di Milano 0
31 Minimizzare probabilità di intercettazione (lungo un lato) Massimizzare probabilità di non intercettazione max ( p ) [, i j] T ij T èun albero di supporto diffusione verso tutti i nodi connesso aciclico per evitare ridondanza e una probabilità di intercettazione più elevata E. Amaldi Fondamenti di R.O. Politecnico di Milano
32 Applicando una funzione monotona crescente, ad esempio log(.), non cambiano le soluzioni ottime ( solo il valore ) max log( ( p )) max log( p ) ij [, i j] T [, i j] T ij Si adattano in modo ovvio gli algoritmi di Prim e Kruskal E. Amaldi Fondamenti di R.O. Politecnico di Milano
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
2.3 Cammini ottimi. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
. Cammini ottimi E. Amaldi Fondamenti di R.O. Politecnico di Milano .. Cammini minimi e algoritmo di Dijkstra Dato un grafo orientato G = (N, A) con una funzione di costo c : A c ij R e due nodi s e t,
Capitolo 5. Algoritmi di ricerca su grafo. 5.1 Algoritmi di ricerca su grafo
Capitolo 5 Algoritmi di ricerca su grafo Gli algoritmi di ricerca su grafo, oggetto dei prossimi paragrafi, rappresentano tecniche fondamentali per determinare nodi che soddisfino particolari proprietà
Algoritmo basato su cancellazione di cicli
Algoritmo basato su cancellazione di cicli Dato un flusso ammissibile iniziale, si costruisce una sequenza di flussi ammissibili di costo decrescente. Ciascun flusso è ottenuto dal precedente flusso ammissibile
Alberi di copertura. Mauro Passacantando. Dipartimento di Informatica Largo B. Pontecorvo 3, Pisa
Alberi di copertura Mauro Passacantando Dipartimento di Informatica Largo B. Pontecorvo, Pisa [email protected] M. Passacantando TFA 0/ - Corso di Ricerca Operativa Università di Pisa / 9 Definizioni
METODI DELLA RICERCA OPERATIVA
Università degli Studi di Cagliari FACOLTA' DI INGEGNERIA CORSO DI METODI DELLA RICERCA OPERATIVA Dott.ing. Massimo Di Francesco ([email protected]) i i Dott.ing. Maria Ilaria Lunesu ([email protected])
Algoritmi Greedy. Tecniche Algoritmiche: tecnica greedy (o golosa) Un esempio
Algoritmi Greedy Tecniche Algoritmiche: tecnica greedy (o golosa) Idea: per trovare una soluzione globalmente ottima, scegli ripetutamente soluzioni ottime localmente Un esempio Input: lista di interi
Problema del cammino minimo
Algoritmi e Strutture di Dati II Problema del cammino minimo Un viaggiatore vuole trovare la via più corta per andare da una città ad un altra. Possiamo rappresentare ogni città con un nodo e ogni collegamento
Minimo albero di copertura
apitolo 0 Minimo albero di copertura efinizione 0.. ato un grafo G = (V, E) non orientato e connesso, un albero di copertura di G è un sottoinsieme T E tale che il sottografo (V, T ) è un albero libero.
Introduzione ai grafi
TFA A048 Anno Accademico 2012-13 Outline Cenni storici sui grafi Nozioni introduttive: cammini, connessione, alberi, cicli Cammini di costo minimo Origini storiche La nascita della teoria dei grafi risale
Problemi, istanze, soluzioni
lgoritmi e Strutture di Dati II 2 Problemi, istanze, soluzioni Un problema specifica una relazione matematica tra dati di ingresso e dati di uscita. Una istanza di un problema è formata dai dati di un
5.3 Metodo dei piani di taglio
5.3 Metodo dei piani di taglio (PLI) min s.v. c T x Ax b x interi X Ipotesi: a ij, c j e b i interi Osservazione: La regione ammissibile di un PLI può essere descritta mediante dei vincoli più o meno stringenti
Appunti del corso di Informatica 1 (IN110 Fondamenti) 7 Grafi e alberi: introduzione
Università di Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica (IN0 Fondamenti) Grafi e alberi: introduzione Marco Liverani ([email protected])
Ottimizzazione su grafi: massimo flusso (parte 1) Ottimizzazione su grafi:massimo flusso (parte 1) p. 1/33
Ottimizzazione su grafi: massimo flusso (parte 1) Ottimizzazione su grafi:massimo flusso (parte 1) p. 1/33 Ottimizzazione su grafi:massimo flusso (parte 1) p. 2/33 Reti di flusso Una rete di flusso è una
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
Algoritmi e strutture dati
Algoritmi e Strutture Dati Cammini minimi Definizioni Sia G = (V,E) un grafo orientato pesato sugli archi. Il costo di un cammino π = è dato da: Un cammino minimo tra una coppia di
Makespan con set-up dipendenti dalla sequenza. 1/s jk /C max
Makespan con set-up dipendenti dalla sequenza 1/s jk /C max 1/s jk /C max Un tempo di riattrezzaggio (set-up) s jk è richiesto fra il processamento di j e quello di k. In questo caso, C max dipende dalla
Cammini minimi in grafi:
Algoritmi e strutture dati Camil Demetrescu, Irene Finocchi, Giuseppe F. Italiano Cammini minimi in grafi: una trilogia Cammini minimi in grafi: Episodio III: la fine della trilogia Input: nelle puntate
4.5 Metodo del simplesso
4.5 Metodo del simplesso min z = c T x s.v. Ax = b x PL in forma standard Esamina una sequenza di soluzioni di base ammissibili con valori non crescenti della funzione obiettivo fino a raggiungerne una
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
Grafi pesati Minimo albero ricoprente
Algoritmi e Strutture Dati Definizioni Grafi pesati Minimo albero ricoprente Sia G=(V,E) un grafo non orientato e connesso. Un albero ricoprente di G è un sottografo T G tale che: T è un albero; T contiene
4.1 Localizzazione e pianificazione delle base station per le reti UMTS
esercitazione Ottimizzazione Prof E Amaldi Localizzazione e pianificazione delle base station per le reti UMTS Consideriamo il problema di localizzare un insieme di stazioni radio base, base station (BS),
UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 20 giugno 2014
A Ricerca Operativa 1 Seconda prova intermedia Un tifoso di calcio in partenza da Roma vuole raggiungere Rio De Janeiro per la finale del mondiale spendendo il meno possibile. Sono date le seguenti disponibilità
Il problema del commesso viaggiatore
Il problema del commesso viaggiatore Mauro Passacantando Dipartimento di Informatica Largo B. Pontecorvo 3, Pisa [email protected] M. Passacantando TFA 2012/13 - Corso di Ricerca Operativa Università
Cammini Minimi. Algoritmo di Dijkstra
Cammini Minimi Algoritmo di Dijkstra Cammino in un grafo Dato un grafo G=(V,E), un Cammino (Percorso) in G è un insieme di vertici v 1, v 2,.., v k tali che (v i, v i+1 ) E v 1 v 2 v 3 v k In un grafo
Possibile applicazione
p. 1/4 Assegnamento Siano dati due insiemi A e B entrambi di cardinalità n. Ad ogni coppia (a i,b j ) A B è associato un valore d ij 0 che misura la "incompatibilità" tra a i e b j, anche interpretabile
Problema dell albero di cammini minimi (SPT, Shortest Path Tree) o problema dei cammini minimi :
Per almeno una delle soluzioni ottime { P i, i r } del problema generalizzato, l unione dei cammini P i forma un albero di copertura per G radicato in r e orientato, ossia un albero la cui radice è r i
11.4 Chiusura transitiva
6 11.4 Chiusura transitiva Il problema che consideriamo in questa sezione riguarda il calcolo della chiusura transitiva di un grafo. Dato un grafo orientato G = hv,ei, si vuole determinare il grafo orientato)
Progettazione di Algoritmi
Corso di laurea in Informatica Prova scritta del: Progettazione di Algoritmi 0/06/06 Prof. De Prisco Inserire i propri dati nell apposito spazio. Non voltare la finché non sarà dato il via. Dal via avrai
Grafi (orientati): cammini minimi
Grafi (orientati): cammini minimi Una breve presentazione Definizioni Sia G=(V,E) un grafo orientato con costi w sugli archi. Il costo di un cammino π= è dato da: Un cammino minimo tra
Grafi (orientati): cammini minimi
.. Grafi (orientati): cammini minimi Una presentazione alternativa (con ulteriori dettagli) Un algoritmo greedy per calcolare i cammini minimi da un vertice sorgente in un grafo orientato e pesato, senza
Cammini minimi. Definizioni. Distanza fra vertici. Proprietà dei cammini minimi. Algoritmi e Strutture Dati
Algoritmi e Strutture Dati Definizioni Sia G=(V,E) un grafo orientato con costi w sugli archi. Il costo di un cammino π= è dato da: Cammini minimi Un cammino minimo tra una coppia di
UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 17 giugno 2013
A UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa Seconda prova intermedia 7 giugno 0 Nome: Cognome: Matricola: Orale /06/0 ore aula N Orale 0/07/0 ore aula N
Parte V: Rilassamento Lagrangiano
Parte V: Rilassamento Lagrangiano Tecnica Lagrangiana Consideriamo il seguente problema di Programmazione Lineare Intera: P 1 min c T x L I Ax > b Cx > d x > 0, intera in cui A = matrice m x n C = matrice
Gestione della produzione e della supply chain Logistica distributiva
Gestione della produzione e della supply chain Logistica distributiva Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Convergenza dell algoritmo Se non
Strutture dati per insiemi disgiunti
Strutture dati per insiemi disgiunti Servono a mantenere una collezione S = {S 1, S 2,..., S k } di insiemi disgiunti. Ogni insieme S i è individuato da un rappresentante che è un particolare elemento
Esercizi Capitolo 11 - Strutture di dati e progettazione di algoritmi
Esercizi Capitolo 11 - Strutture di dati e progettazione di algoritmi Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore
Gestione della produzione e della supply chain Logistica distributiva
Gestione della produzione e della supply chain Logistica distributiva Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Struttura delle reti logistiche
Grafi: ordinamento topologico
.. Grafi: ordinamento topologico Che cosa e e come si calcola Che cosa e un ordinamento topologico F. Damiani - Alg. & Lab. 04/05 Una definizione di ordinamento topologico Definizione. Funzione σ: V {1,
3.6 Metodi basati sui piani di taglio
3.6 Metodi basati sui piani di taglio Problema generale di Programmazione Lineare Intera (PLI) con A matrice m n e b vettore n 1 razionali min{ c t x : x X = {x Z n + : Ax b} } Sappiamo che esiste una
Algoritmi e Strutture Dati
Introduzione ai grafi Grafi: Definizione e Algoritmi di visita Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino A.A. 2007/08 Introduzione ai
3.4 Metodo di Branch and Bound
3.4 Metodo di Branch and Bound Consideriamo un generico problema di Ottimizzazione Discreta dove X è la regione ammissibile. (P ) z = max{c(x) : x X} Metodologia generale di enumerazione implicita (Land
Introduzione ai grafi. Introduzione ai grafi p. 1/2
Introduzione ai grafi Introduzione ai grafi p. 1/2 Grafi Un grafo G é costituito da una coppia di insiemi (V,A) dove V é detto insieme dei nodi e A é detto insieme di archi ed é un sottinsieme di tutte
Fondamenti 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
OTTIMIZZAZIONE LINEARE MULTICRITERIO
OTTIMIZZAZIONE LINEARE MULTICRITERIO NOTAZIONE Siano x ed y vettori di R n indicati estesamente con x x x x 1 Μ i Μ n, y y1 Μ yi Μ y n e si ponga N = {1,2,, n}. Scriveremo allora: x y ( x è diverso da
Esempi. non. orientato. orientato
Definizione! Un grafo G = (V,E) è costituito da un insieme di vertici V ed un insieme di archi E ciascuno dei quali connette due vertici in V detti estremi dell arco.! Un grafo è orientato quando vi è
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati Capitolo 13 Cammini minimi: Algoritmo di Dijkstra (*) (ACM in grafi diretti e non diretti senza archi di peso negativo) Punto della situazione Algoritmo basato sull ordinamento
Esercizi di Algoritmi e Strutture Dati
Esercizi di Algoritmi e Strutture Dati Moreno Marzolla [email protected] Ultimo aggiornamento: 3 novembre 2010 1 Trova la somma/1 Scrivere un algoritmo che dati in input un array A[1... n] di n interi
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)
Metodi di Ottimizzazione per la Logistica e la Produzione
Metodi di Ottimizzazione per la Logistica e la Produzione Laboratorio Manuel Iori Dipartimento di Scienze e Metodi dell Ingegneria Università di Modena e Reggio Emilia MOLP Parte I 1 / 41 Contenuto della
COMPITO DI RICERCA OPERATIVA APPELLO DEL 08/01/04
COMPITO DI RICERCA OPERATIVA APPELLO DEL 08/01/04 Esercizio 1 Si risolva con il metodo branch-and-bound il seguente problema di PLI max x 1 + x 4x 1 + x + x = 0 x 1 + x + x 4 = x 1, x, x, x 4 0 x 1, x,
Ottimizzazione nella Gestione dei Progetti - Esercitazione 1: calcolo degli schedule ottimi
Università degli Studi di Roma La Sapienza Ottimizzazione nella Gestione dei Progetti - Esercitazione : calcolo degli schedule ottimi di FABIO D ANDREAGIOVANNI Dipartimento di Informatica e Sistemistica
Grafi: visita generica
.. Grafi: visita generica Una presentazione alternativa (con ulteriori dettagli) Algoritmi di visita Scopo: visitare tutti i vertici di un grafo (si osservi che per poter visitare un vertice occorre prima
Algoritmi e Strutture Dati
Algoritmi e strutture dati Camil Demetrescu, Irene Finocchi, Giuseppe F. Italiano Algoritmi e Strutture Dati Capitolo 2 Minimo albero ricoprente: Algoritmo di Prim Il problema del calcolo di un Minimum
Luigi Piroddi
Automazione industriale dispense del corso (a.a. 2008/2009) 9. Reti di Petri: analisi dinamica e metodi di riduzione Luigi Piroddi [email protected] Metodi di analisi di Reti di Petri Ci sono 2 modi
Problema 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. p. 1/1 Problema del trasporto Supponiamo di avere m depositi in
Algoritmi e Strutture Dati (Mod. B) Algoritmi su grafi Ricerca in profondità (Depth-First Search) Parte III
Algoritmi e Strutture Dati (Mod. B) Algoritmi su grafi Ricerca in profondità (Depth-First Search) Parte III Applicazioni di DFS Due prolemi: calcolare l ordinamento topologico indotto da un grafo aciclico.
Cammini minimi fra tutte le coppie
Capitolo 12 Cammini minimi fra tutte le coppie Consideriamo il problema dei cammini minimi fra tutte le coppie in un grafo G = (V, E, w) orientato, pesato, dove possono essere presenti archi (ma non cicli)
Ricerca Operativa. Claudio Arbib Universitàdi L Aquila. Esercizi di ottimizzazione combinatoria
Claudio Arbib Universitàdi L Aquila Ricerca Operativa Esercizi di ottimizzazione combinatoria 00-006 Grafi 9 Esercizio. Un grafo simmetrico G = (V, E) si dice cubico se tutti i suoi vertici hanno grado
PROGRAMMAZIONE STRUTTURATA
PROGRAMMAZIONE STRUTTURATA Programmazione strutturata 2 La programmazione strutturata nasce come proposta per regolamentare e standardizzare le metodologie di programmazione (Dijkstra, 1965) Obiettivo:
Dati e Algoritmi I (Pietracaprina) Esercizi sulle Nozioni di Base
Dati e Algoritmi I (Pietracaprina) Esercizi sulle Nozioni di Base Dati e Algoritmi I (Pietracaprina): Esercizi 1 Problema 1. Sia T una stringa arbitraria di lunghezza n 1 su un alfabeto Σ. È sempre possibile
Capitolo 3: Ottimizzazione non vincolata parte III. E. Amaldi DEI, Politecnico di Milano
Capitolo 3: Ottimizzazione non vincolata parte III E. Amaldi DEI, Politecnico di Milano 3.4 Metodi di ricerca unidimensionale In genere si cerca una soluzione approssimata α k di min g(α) = f(x k +αd k
Complementi ed Esercizi di Informatica Teorica II
Complementi ed Esercizi di Informatica Teorica II Vincenzo Bonifaci 21 maggio 2008 4 Problemi di ottimizzazione: il Bin Packing Il problema bin packing è il seguente: dato un insieme di n oggetti di dimensioni
Grafi diretti. Un grafo diretto (o grafo orientato) G è una coppia (V,E) dove. V è u n i n s i e m e d i nodi (o vertici);
Algoritmi e Strutture di Dati II 2 Grafi diretti Un grafo diretto (o grafo orientato) G è una coppia (V,E) dove V è u n i n s i e m e d i nodi (o vertici); E µ V V è u n i n s i e m e d i archi. Denotiamo
La teoria dei grafi permette di esprimere in modo sistematico le LKT e LKC con i metodi della
Grafi La teoria dei grafi permette di esprimere in modo sistematico le LKT e LKC con i metodi della topologia combinatoria. Definizione intuitiva di grafo: Un Grafo è un insieme di nodi (rappresentabili
Algoritmi greedy. Progettazione di Algoritmi a.a Matricole congrue a 1 Docente: Annalisa De Bonis
Algoritmi greedy Progettazione di Algoritmi a.a. 2016-17 Matricole congrue a 1 Docente: Annalisa De Bonis 1 Scelta greedy Un algoritmo greedy è un algoritmo che effettua ad ogni passo la scelta che in
Algoritmi di Ricerca
Algoritmi di Ricerca Contenuto Algoritmi non informati Nessuna conoscenza sul problema in esame Algoritmi euristici Sfruttano conoscenze specifiche sul problema Giochi Quando la ricerca è ostacolata da
