CASO 1) Pesi positivi ( diretto o indiretto) Algoritmo di Dijkstra

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "CASO 1) Pesi positivi ( diretto o indiretto) Algoritmo di Dijkstra"

Transcript

1 4) DISTANZE Problematiche Si suppone un grafo in cui ad ogni arco e' associato un peso (distanza). Il grafo puo' essere sia diretto che non diretto. Se non e' diretto ogni arco puo' essere pensato come una coppia di archi orientati. Si tratto di calcolare il percorso tra i-j corrispondente ai pesi (distanze) minime. Il problema e' sensato se il minimo esiste. Se ad una sequenza di archi che parte e arriva nello stesso vertice corrisponde una somma di distanze negativa allora la sequenza puo' essere percorsa un numero infinito di volte e il problema di minima distanza e' mal posto. Si e' sicuramente nel caso precedente se il grafo non e' diretto e l'arco (i,j) ha peso (distanza) d(i,j) < 0 perche' il cammino i-j-i puo' essere indefinitamente ripetuto. La non esistenza del ciclo negativo e' un ipotesi che va in qualche modo aggiunta e conviene considerare separatamente i tre casi che vengono risolti con tecniche differenti: - grafi (diretti o indiretti) con pesi (distanze) non negative - grafi diretti con distanze sia positive che negative ma senza cicli negativi - grafi diretti con distanze sia positive che negative ma senza cicli (aciclici) CASO 1) Pesi positivi ( diretto o indiretto) Algoritmo di Dijkstra Se si fissa un vertice i e' possibile calcolare il cammino minimo da i a ogni vertice. (Algoritmo di Dijkstra) Si suppone di avere ad ogni passo un insieme di vertici raggiungibili da i. Sia V tale insieme. Per ogni vertice x V e' noto il valore del cammino minimo da i a x. Per i rimanenti vertici y Y e' noto il valore d V (y) del cammino minimo da i a y attraverso V. Si puo' partire da V = {i} in tal caso d(i)=0 e per i rimanenti vertici y d(y) = d(i,y) se esiste arco (i,y) e + negli altri casi. Se z e' il vertice di Y per cui si ha d V (z) = min { d V (y), y Y } allora d(z) = d V (z). Infatti attraverso V si ha un cammino da i a z di lunghezza d V (z) Un eventuale altro cammino i---z parte da V (i V), raggiunge un vertice p Y, p z e da questo z Il costo C del cammino e' allora C= d V (p) + costo( p---z) Il peso di ogni arco e' positivo, vale d V (p) d V (z) e C d V (p) d V (z)

2 Si puo' quindi fissare il vertice z e avere V=V {z} Y= Y\{z} Se z e' aggiunto a V i cammini i---y attraverso V possono passare attraverso z quindi se y Y d V (y) = min { d V (y), d(z) + d(z,y) } Dopo n-1 passi sono calcolate tutte le distanze da i ai rimanenti vertici. Nell'algoritmo si tiene memoria oltre che delle quantita' provvisorie d V e definitive d() del predecessore/padre di ogni vertice nel cammino i---vertice. in modo poter ricostriuire facilmente il cammino ad i. Il predecessore/padre e' posto come il vertice che precede il vertice nel cammino attraverso V. Inizialmente e posto a i ed e' modificato ogni volta che nel calcolo del minimo il valore cambia.

3 Esempio 1 Si calcolano tutte le distanze da 1 ai rimanenti vertici V={1} n [1, 2, 3, 4, 5, 6, 7, 8] D=(0, 7, 4, 2, 4, +, +, + ) P= (1, 1, 1, 1, 1, 1, 1, 1) Si fissa 4, V={1,4} Si effettua il ricalcolo, se nel ricalcolo il valore e' modificato il vertice padre e' il nuovo vertice. Ricalcolo d V (2) = min { 7, 2 + d(4,2) } = min { 7, + } =7 d V (3) = min { 4, 2 + d(4,3) }= min {4,2+1 }= 3 (modificato) d V (5) = min { 4, 2 + d(4,5) }= min {4,2+1 }= 3 (modificato) d V (6) = min { +, 2 + d(4,6) }= min { +,2+5 }=7 (modificato) d V (7) = min { +, 2 + d(4,7) }= min { +, + }= + d V (8) = min { +, 2 + d(4,8) }= min {+, + }=+ Il valore minimo e' d V (3) = 3 V diventa { 1,4,3} Ricalcolo (uno dei due possibili)

4 d V (2) = min { 7, 3 + d(3,2) } = min { 7, 3 +3} =6 d V (5) = min { 3, 3 + d(3,5)}= min {3, + }= 3 d V (6) = min { 7, 3 + d(3,6)}= min { 7,2+5 }=7 d V (7) = min { +, 3 + d(3,7) }= min { +, 3 +5}=8 (modificato) d V (8) = min { +, 3 + d(3,8) }= min {+, + }=+ Il valore minimo e' d V (5) = 3 (uno dei due possibili al passo precedente ) V diventa { 1,4,3,5} Ricalcolo d V (2) = min { 7, 3 + d(5,2) } = min { 6, + } =6 d V (6) = min { 7, 3 + d(5,6)}= min { 7,3+3 }=6 (modificato) d V (7) = min { 8, 3 + d(5,7) }= min { 8, 3 +5}=8 d V (8) = min { +, 3 + d(5,8) }= min {+, }=9 (modificato) Nei passi successivi vengono introdotti i valori 2 e 6 modificando per V= { 1,4,3,5,2} d V (6) = min { 6, 63 + d(2,6)}= min { 6, + }=6 d V (7) = min { 8, 6 + d(2,7) }= min { 8, 6 +1}=7 (modificato) d V (8) = min { 9, 6 + d(2,8) }= min {9, + }=9 per V= { 1,4,3,5,2,6} d V (7) = min { 7, 6 + d(6,7) }= min { 7, 6 +3}=7 d V (8) = min { 9, 6 + d(6,8) }= min {9,6+4 }=9 Il valore minore e' d V (7)=7 si ottiene quindi d V (8) = min { 9, 7 + d(7,8) }= min {9,7+1 }=8 che ovviamente e' il valore del minimo cammino Si ottiene l'albero delle minime distanze da 1 segnato nella figura (archi piu' spessi)

5 Esempio 2 Si effettua il calcolo delle minime distanze da 1 per il grafo (diretto) in figura Si parte da V={1} n [ ] D (0,10,20, +,+,+ ) P (1,1,1,1,1,1) Il valore minimo delle distanze verso vertici non in V e ' D(2)= 10 Si ha V= {1,2} e si ricalcola d V (3) = min { 20, 10 + d(2,3) } = min { 20, } =20 d V (4) = min { +, 10 + d(2,4) }= min {+, + }= + d V (5) = min { + 4, 10 + d(2,5) }= min {+, + }= + d V (6) = min { +, 10 + d(2,6) }= min {+, + }= + Il valore minimo e' d V (3) =20 V={1,2,3} e si ricalcola d V (4) = min { +, 20 + d(3,4) }= min {+,20+30}=50 (modificato) d V (5) = min { +, 20 + d(3,5) }= min {+, + }=+ d V (6) = min { +, 20 + d(3,6) }= min {+, }= 60 (modificato) Il valore minimo e' d V (4) = 50 Si ha V={1,2,3,4}

6 ricalcolo d V (5) = min { +, 50 + d(4,5) }= min {+,50+50 }=100 (modificato) d V (6) = min { 60, 50 + d(4,6) }= min {60, + }= 60 Il valore piu' piccolo e' d V (6) =60 e l'ultimo valore risulta d V (5) = min { 100, 60 + d(6,5) }= min{100,+ }=100 L'albero delle minime distanze da 1 e' segnato nella figura In un grafo diretto il cammino di minimo costo tra due vertici k --p puo' essere espresso come problema lineare. Si considere la matrice A (nodi archi) dove ogni colonna corrisponde ad un arco (i,j) e ha elementi nulli tranne in riga i (= -1) e riga j (=1) e il vettore c di componenti c(i,j)= costo percorso i j Ad ogni arco si associa una variabile x(i,j) intera tra 0 e 1 x(i,j)=1 se arco i--j nel minimo cammino, 0 altrimenti Il prodotto scalare c(i,j) x(i,j) esprime il costo del cammino. Il vincolo Ax=g dove g = -1 per k, 1 per p, 0 altrimenti "cattura" i vettori di un cammino k--p attraverso i vertici i-j-s... garantendo arrivo e partenza in ogni vertice intermedio. Il minimo cammino tra k--p e' un problema del tipo min cx Ax=g x 0 x 1 (su ogni componente) CASO 2 (no cicli negativi) In questo caso non e' possibile tornare vantaggiosamente allo stesso vertice e si puo' applicare un algoritmo simile al precedente. Come dimostra un esempio semplicissimo se c(1,2)=5, c(1,3)=2, c(2,3)= -9 il cammino minimo tra 1 e 3 e' dato da con costo -4 l'analisi dell'adiacenza di 1 non determina con sicurezza il cammino minimo a nessun vertice. In realta' il cammino minimo tra i-j va determinato come cammino minimo tra

7 tutti i cammini possibili. Se si segue un algoritmo tipo Dijkstra (scegliendo un vertice ad ogni passo) nessuna distanza puo' essere considerata esatta fino ad esaurimento del grafo. L'unica osservazione utile e' (Programmazione dinamica / principio di Bellman ) se il cammino minimo tra i--j passa da h necessariamente la parte h--j (del cammino minimo i--j ) e' il minimo cammino tra h e j ( ovvero : code di cammini ottimali sono ottimali ) Utilizzando questa osservazione e' facile costruire l'atlante dei cammini minimi ( cammino minimo da ogni vertice a tutti) (Algoritmo di Floyd? ) Si definiscono D(i,j) = minimo cammino da i a j Do (i,j) = minimo cammino da i a j utilizzando solo gli archi del grafo D 1 (i,j) = minimo cammino da i a j utilizzando (passando attraverso) il nodo 1 D k (i,j) = minimo cammino da i a j utilizzando (passando attraverso)i nodi 1...k Se non esiste cammino i-j il valore D e' posto = + allora partendo da D o (i,j) e calcolando for k=1:n (nodi di possibile appoggio) for i=1:n (nodo iniz ) for j=1:n (nodo finale) D k (i,j) = min [ D k-1 (i,j), D k-1 (i,k)+ D k-1 (k,j) ] si ottiene come D k il valore corretto di D Oltre alle distanze D k (i,j) conviene conservare per ogni j l' etichetta del vertice "padre" nel cammino verso i. (Matrice delle etichette) L'algoritmo puo' essere applicato anche se le distanze sono negative. Se esiste un ciclo negativo e' possibile tornare a costo <0 in un vertice Se applicato ad un grafo con cicli negativi si ottengono dei valori diagonali D(i,i) <0 per qualche i nel ciclo.

8 Esempio 3 ( Floyd ) Si considera il grafo in figura Le distanze iniziali sono Inf 1 2 Inf Inf Inf Inf 3 2 Inf Inf Inf Inf Inf 0 Inf Inf 4 Inf -1-1 Inf Inf Inf Inf Permettendo il passaggio da 1 le distanze minime (dirette o attraverso 1) sono (tabella) Inf 1 2 Inf Inf Inf Inf 3 2 Inf Inf Inf Inf Inf 0 Inf Inf 4 Inf Inf Inf ( si aggiungono i valori finiti 5-2 che corrisponde a 5-1-2,, 5-3 [5-1-3] Percorsi piu' lunghi (come ) saranno possibili dopo il possibile passaggio per tutti i vertici intermedi Alla fine (k = 5, passaggio possibile attraverso tutti i vertici) si ha Tabella Nel grafo sono possibili i cicli & (costo 1)

9 Se il peso di (5,1) diventa -2 il costo dei cicli diventa 0 e la tabella finale si modifica in Se il peso di (5,1) diventa 3 i cicli hanno costo negativo Se si permette il passaggio attraverso 1 si considera il cammino Se si permette il passaggio attraverso 3 si ha (5-1-3)+(3-5) ovvero (costo -1) Quindi gia' nella tabella 3 il cammino (5,5) diventa negativo Inf Inf Inf Inf Inf Inf Inf 0 Inf Inf 4 Inf Se i calcoli proseguono nella tabella finale tutti i termini diagonali sono negativi. poiche' ogni vertice e' in ciclo negativo [ e/o ]

10 CASO 3 grafi aciclici I grafi aciclici hanno alcune particolarita' a) E' possibile ordinare i vertici in modo che se esiste arco (i,j) allora i<j b) si possono calcolare sia min + massime distanze Dim a) Si parte da un vertice arbitrario e si prosegue scegliendo sempre arbitrariamente un arco uscente. Dopo un numero finito di passi si arriva, (per aciclicita' i vertici non si possono ripetere nel cammino ) in un vertice senza archi uscenti. Tale vertice puo' essere scaricato e si puo' ripetere il procedimento partendo da qualsiasi altro vertice (per esempio il vertice immediatamente precedente al vertice scaricato). In questo modo si scaricano progressivamente tutti i vertici e per costruzione il primo vertice scaricato v1 ha solo archi entranti il secondo vertice scaricato v2 puo' avere solo archi diretti a v1 il terzo vertice scaricato v3 puo' avere solo archi diretti a v1 e v2... Se si rinumerano nell'ordine i vertici scaricati come n,n-1,n-2,..., 1 si verifica l'ipotesi Se i vertici sono cosi' numerati e' molto facile calcolare la minima distanza tra tutti i vertici (senza inutili ricalcoli ) Sia D(i,j) il minimi percorso tra i e j Ovviamente D(i,j)= + se i vertici i e j non sono collegati e in particolare per i j Sia d(i,j) il peso dell'arco (i,j) e + se l'arco non esiste Inoltre per tutti gli indici i =2,...,n si ha D(i-1,i)= d(i-1,i ) [ da i-1 si possono raggiungere solo vertici h con h i e non esistino archi (h,i) se h>i ] Il calcolo dei valori D si effettua in modo molto semplice E' immediato il calcolo di D(1,2) Se si suppongono noti i valori D(j,k)= j <k < i I valori D(j,i) successivi si possono calcolare come D(i-1,i)= d(i-1,i ) Per i rimanenti si ha D(j,i) = min { d(j,i), min j<k<i {D(j,k)+D(k,i) } }

11 Se il calcolo e' eseguito nell'ordine j= i-2,...,1 in ogni formula compaiono solo valori D(j,k), k <i ( e quindi noti) e D(k,i) j<k ( gia' calcolati ) I valori D calcolati non vanno aggiornati. E' possibile calcolare il massimo cammino E' sufficeinte sostituire max a min nella formula e si ha D(j,i) = max { d(j,i), max j<k<i {D(j,k)+D(k,i) } } [ In questo caso d(i,j) e' il peso dell'arco (i,j) che vale - se l'arco non esiste ] Un' applicazione dei grafi aciclicici e' la determinazione ottimale di di calendari di lavori spesso indicata come CPM (Critical path method ) o PERT (Planning evaluation...? ) Si tratta di tecniche estremamente utili e concettualmente semplici. Viene presentato un esempio da cui e' possibile capire la tecnica per eventuali applicazioni Esempio 4 (CPM/ PERT) Occorre compiere un lavoro attraverso - produzione di 4 parti A B C D - Occorre una macchina M1 per produrre A e D - Occorre una macchina M2 per produrre B - Occorre una macchina M3 per produrre C I vari pezzi vanno assemblati : C va unito a D, B unito al pezzo (C+D), A unito al pezzo (B+(C+D)). Occorre una macchina V per testare il pezzo finale Ogni singola operazione richiede un tempo 1- per la disponibilità di M1 occorre T=2 2- per la disponibilità di M2 occorre T=3 3- per la disponibilta di M3 occorre T=4 4- per la disponibilità di V occorre T=2 5- per produrre A occorre T=5 6- per produrre B occorre T=3 7- per produrre C occorre T= 2 8- per produrre D occorre T= 2 9 -per assemblare (C+D) occorre T=1 10- per assemblare B+(C+D) occorre T=2 11- per assemblare occorre A+(B+(C+D)) T=3 12- per la verifica occorre T=1

12 Ovviamente vanno rispettatte le precedenze quindi (basta indicare le precedenze immediate) 1 precede 5 e 8 2 precede 6 3 precede 7 4 precede 12 5 precede 11 6 precede 10 7 precede 9 8 precede 9 9 precede precede precede 12 Si forma un grafo con n (=12) vertici corrispondenti alle varie operazioni, un vertice 0 (inizio lavori), un vertice n+1 fine lavori (13 in questo caso). Nel grafo gli archi corrispondono alle precedenze, 0 precede i lavori(1,2,3,4) non preceduti, 13 e' preceduto dai lavori che non ne precedono altri (12) Ad ogni arco (i,j) si associa un peso (distanza) corrispondente al tempo necessario per compiere il lavoro i. ( 0 per il lavoro 0) I nodi del grafo possono essere pensati come eventi. Il nodo i corrispondebbe all'inizio del lavoro i. Il grafo risulta aciclico se le precedenze sono logicamente corrette. E' quindi possibile calcolare cammini minimi e massimi tra vertici Ogni cammino corrisponde ad una sequenza di lavori Il tempo di effettuazione dei lavori corrisponde al massimo cammino

13 In generale il lavoro k puo' iniziare non prima di max cammino 0--k Se T* e' il tempo finale per non ritadare la fine dei lavori e' sufficente che il lavoro k inizi non piu' tardi di T*- max(k--13) In questo caso Alcune operazioni [3,7,9,10,11,12] non possono ritardare senza ritardare la fine delle operazioni. Queste operazioni sono dette operazioni critiche e nel grafo il percorso corrispondente e' detto cammino critico. Altre [1,2,4,5,6,8] possono ritardare. E' possibile considerare per ogni operazione - di quanto puo' essere ritardata senza ritardare la fine dei lavori - di quanto puo' essere ritardata senza impedire che i lavori successivi abbiano inizio a data minima - di quanto puo' essere ritardata nel caso piu' sfavorevole ( lavori precedenti a data masima lavori successivi a data minima) Si possono generare facilmente tabella di questo tipo. E' considerato solo il primo tipo di ritardo. Op min inizio Max cammino a 13 max inizio Ritardo Durata prevista Max durata Questa analisi permette di ricavare un calendario dei lavori, di valutare le conseguenze dei ritardi, e le operazioni piu' importanti.

14 Se ritardare un 'operazione diminuisce i costi ( in modo diverso per ogni operazione) si puo' anche cercare di minimizzare i costi con il vincolo di terminare entro la data stabilita. Si tratta di distruibuire al meglio i ritardi considerando costi e conseguenze. Ad esempio sui cammini e sono possibili ritardi di 2 che possono essere ottenuti sia ritardando le tre operazioni 1,5,8, del tempo 1 oppure le sole operazioni 5,8 del tempo 2.. Calcolare il tempo minimo (e i calendari) corrisponde a risolvere un problema lineare Se t(i) e' il tempo di arrivo nel nodo i / inizio del lavoro i e d(i) e' la durata del lavoro i e' come se si calcolasse min ( t(n+1) ) con i vincoli t(0)=0 e per ogni arco /precedenza (i,j) t(i) +d(i) t(j) Se il ritardo di un tempo s(i) nel lavoro i comporta un risparmio di c(i)s(i) una volta fissato il tempo finale t(n+1)=t risolvere il problema max c(i)s(i) con i vincoli t(0)=0 t(n+1)=t e per ogni arco /precedenza (i,j) t(i) +d(i)+s(i) t(j) equivale a determinare un calendario ottimale con il massimo risparmio possibile

età (anni) manutenzione (keuro) ricavato (keuro)

età (anni) manutenzione (keuro) ricavato (keuro) .6 Cammini minimi. Determinare i cammini minimi dal nodo 0 a tutti gli altri nodi del seguente grafo, mediante l algoritmo di Dijkstra e, se applicabile, anche mediante quello di Programmazione Dinamica.

Dettagli

11.4 Chiusura transitiva

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)

Dettagli

2.3 Cammini ottimi. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

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,

Dettagli

Operations Management

Operations Management La schedulazione dei progetti Estratto da Operations Management Modelli e metodi per la logistica II Edizione Autore: Giuseppe Bruno Edizioni Scientifiche Italiane I problemi di scheduling 21 6.8 - LA

Dettagli

UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 17 giugno 2013

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

Dettagli

Figura 1: 1) Si scriva la formulazione del problema come problema di PLI (con un numero minimo di vincoli) e la matrice dei vincoli.

Figura 1: 1) Si scriva la formulazione del problema come problema di PLI (con un numero minimo di vincoli) e la matrice dei vincoli. ESERCIZIO 1 Sia dato il grafo orientato in Figura 1. Si consideri il problema di flusso a 1 2 4 Figura 1: costo minimo su tale grafo con b 1 = 4 b 2 = 2 b = b 4 = e c 12 = 2 c 1 = 4 c 14 = 1 c 2 = 1 c

Dettagli

Algoritmi e strutture dati

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

Dettagli

Cammini minimi. Definizioni. Distanza fra vertici. Proprietà dei cammini minimi. Algoritmi e Strutture Dati

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

Dettagli

Parte V: Rilassamento Lagrangiano

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

Dettagli

Il problema del commesso viaggiatore

Il problema del commesso viaggiatore Il problema del commesso viaggiatore Mauro Passacantando Dipartimento di Informatica Largo B. Pontecorvo 3, Pisa mpassacantando@di.unipi.it M. Passacantando TFA 2012/13 - Corso di Ricerca Operativa Università

Dettagli

Grafi (orientati): cammini minimi

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

Dettagli

Esercizi per il corso di. Logistica I. a.a Daniela Favaretto. Dipartimento di Matematica Applicata Università Ca Foscari di Venezia

Esercizi per il corso di. Logistica I. a.a Daniela Favaretto. Dipartimento di Matematica Applicata Università Ca Foscari di Venezia sercizi per il corso di Logistica I a.a. - aniela avaretto ipartimento di Matematica pplicata Università a oscari di Venezia sercizio Individuare un albero di supporto di lunghezza minima (SST) sul seguente

Dettagli

Problema del trasporto

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

Dettagli

Problemi, istanze, soluzioni

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

Dettagli

Possibile applicazione

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

Dettagli

UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 20 giugno 2014

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à

Dettagli

2. ALGORITMO DEL SIMPLESSO

2. ALGORITMO DEL SIMPLESSO . ALGORITMO DEL SIMPLESSO R. Tadei Una piccola introduzione R. Tadei SIMPLESSO L obiettivo del capitolo è quello di fornire un algoritmo, l algoritmo del simplesso, che risolve qualsiasi problema di programmazione

Dettagli

1 Il metodo dei tagli di Gomory

1 Il metodo dei tagli di Gomory Il metodo dei tagli di Gomory Esercizio Sia dato il problema min(x x ) x + x (P 0 ) x + x x, x 0, interi. Calcolare la soluzione ottima applicando il metodo dei tagli di Gomory. Risoluzione Per applicare

Dettagli

Esercizi Capitolo 11 - Strutture di dati e progettazione di algoritmi

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

Dettagli

Corso di Matematica per la Chimica

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

Dettagli

Appunti del corso di Informatica 1 (IN110 Fondamenti) 7 Grafi e alberi: introduzione

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 (liverani@mat.uniroma.it)

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

Introduzione. Il routing permette la comunicazione tra due nodi differenti anche se non sono collegati direttamente

Introduzione. Il routing permette la comunicazione tra due nodi differenti anche se non sono collegati direttamente Routing Introduzione Il livello 3 della pila ethernet ha il compito di muovere i pacchetti dalla sorgente attraversando più sistemi Il livello di network deve quindi: Scegliere di volta in volta il cammino

Dettagli

Routing IP. IP routing

Routing IP. IP routing Routing IP IP routing IP routing (inoltro IP): meccanismo per la scelta del percorso in Internet attraverso il quale inviare i datagram IP routing effettuato dai router (scelgono il percorso) Routing diretto

Dettagli

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

A UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 13 giugno 2011 A UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Stdi in Ingegneria Informatica Ricerca Operativa Seconda prova intermedia gigno Nome: Cognome: Matricola: voglio sostenere la prova orale il giorno venerdì //

Dettagli

L ALGORITMO DEL SIMPLESSO REVISIONATO

L ALGORITMO DEL SIMPLESSO REVISIONATO L ALGORITMO DEL SIMPLESSO REVISIONATO L'algoritmo del simplesso revisionato costituisce una diversa implementazione dell algoritmo standard tesa a ridurre, sotto certe condizioni, il tempo di calcolo e

Dettagli

Algoritmo basato su cancellazione di cicli

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

Dettagli

Problemi di Percorso. Capitolo dodicesimo

Problemi di Percorso. Capitolo dodicesimo Capitolo dodicesimo Problemi di Percorso Introduzione I problemi di determinazione di percorsi ottimi sono tra i più noti problemi di ottimizzazione su rete. Essi si presentano in innumerevoli campi, nella

Dettagli

Cammini minimi fra tutte le coppie

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)

Dettagli

i completi l'esecuzione dell'algoritmo di programmazione dinamica per questo problema restituendo il valore ottimo e una soluzione ottima del problema

i completi l'esecuzione dell'algoritmo di programmazione dinamica per questo problema restituendo il valore ottimo e una soluzione ottima del problema Compito di Ricerca Operativa II Esercizio ( punti). ia dato il problema di flusso massimo sulla rete in figura (le capacit a degli archi sono riportate sopra di essi). 0 8 i consideri il seguente flusso

Dettagli

Pianificazione dei progetti. Alberto Caprara DEIS - Università di Bologna

Pianificazione dei progetti. Alberto Caprara DEIS - Università di Bologna Pianificazione dei progetti Alberto Caprara DEIS - Università di Bologna acaprara@deis.unibo.it Tecniche reticolari Metodologie per la risoluzione di problemi di pianificazione di progetti Progetto: insieme

Dettagli

UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 17 giugno 2013

UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 17 giugno 2013 A Ricerca Operativa 1 Seconda prova intermedia Si è rotto un aereo che doveva trasportare un elevato numero di persone dalla città 3 alla città 8. Si rende quindi necessario utilizzare i posti disponibili

Dettagli

RISOLUZIONE DI SISTEMI LINEARI

RISOLUZIONE DI SISTEMI LINEARI RISOLUZIONE DI SISTEMI LINEARI Algebra lineare numerica 1 La risoluzione di un sistema lineare è il nucleo principale del processo di risoluzione di circa il 70% di tutti i problemi reali Per la risoluzione

Dettagli

Problema del cammino minimo

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

Dettagli

Modelli decisionali su grafi - Problemi di Localizzazione

Modelli decisionali su grafi - Problemi di Localizzazione Modelli decisionali su grafi - Problemi di Localizzazione Massimo Paolucci (paolucci@dist.unige.it) DIST Università di Genova Percorso Minimo tra tutte le coppie di vertici 2 Si può applicare n volte Dijstra

Dettagli

Sistemi lineari. Lorenzo Pareschi. Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara

Sistemi lineari. Lorenzo Pareschi. Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara Sistemi lineari Lorenzo Pareschi Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara http://utenti.unife.it/lorenzo.pareschi/ lorenzo.pareschi@unife.it Lorenzo Pareschi (Univ. Ferrara)

Dettagli

Esame di Ricerca Operativa del 16/06/2015

Esame di Ricerca Operativa del 16/06/2015 Esame di Ricerca Operativa del 1/0/01 (Cognome) (Nome) (Matricola) Esercizio 1. Una ditta produce vernici in tre diversi stabilimenti (Pisa, Cascina, Empoli) e le vende a tre imprese edili (A, B, C). Il

Dettagli

Conversione di base. Conversione decimale binario. Si calcolano i resti delle divisioni per due

Conversione di base. Conversione decimale binario. Si calcolano i resti delle divisioni per due Conversione di base Dato N>0 intero convertirlo in base b dividiamo N per b, otteniamo un quoto Q 0 ed un resto R 0 dividiamo Q 0 per b, otteniamo un quoto Q 1 ed un resto R 1 ripetiamo finché Q n < b

Dettagli

Grafi pesati Minimo albero ricoprente

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

Dettagli

Assemblaggio degli Elementi: Soluzione del Problema Strutturale Discreto

Assemblaggio degli Elementi: Soluzione del Problema Strutturale Discreto Il Metodo degli Elementi Finiti Assemblaggio degli Elementi: Soluzione del Problema Strutturale Discreto Dalle dispense del prof. Dario Amodio e dalle lezioni del prof. Giovanni Santucci Per ottenere la

Dettagli

Pagine di Algebra lineare. di premessa al testo Pagine di Geometria di Sara Dragotti. Parte terza: SISTEMI LINEARI

Pagine di Algebra lineare. di premessa al testo Pagine di Geometria di Sara Dragotti. Parte terza: SISTEMI LINEARI Pagine di Algebra lineare di premessa al testo Pagine di Geometria di Sara Dragotti Parte terza: SISTEMI LINEARI 1. Definizioni Dato un campo K ed m 1 polinomi su K in n indeterminate di grado non superiore

Dettagli

- Trovare soluzione ottima primale ( con il simplesso o algoritmo analogo)

- 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

Dettagli

Decomposizione LU di una matrice quadrata

Decomposizione LU di una matrice quadrata Appendice al Cap. 5 Decomposizione LU di una matrice quadrata Una qualunque matrice quadrata M = {m ij } di ordine N, reale, invertibile, i cui minori principali siano tutti non nulli, si può sempre decomporre

Dettagli

Introduzione al Metodo del Simplesso. 1 Soluzioni di base e problemi in forma standard

Introduzione al Metodo del Simplesso. 1 Soluzioni di base e problemi in forma standard Introduzione al Metodo del Simplesso Giacomo Zambelli 1 Soluzioni di base e problemi in forma standard Consideriamo il seguente problema di programmazione lineare (PL), relativo all esempio di produzione

Dettagli

Corso di elettrotecnica Materiale didattico: i grafi

Corso di elettrotecnica Materiale didattico: i grafi Corso di elettrotecnica Materiale didattico: i grafi A. Laudani 12 ottobre 2005 I grafi costituiscono uno strumento matematico che permette di descrivere e schematizzare una grande varietà di problemi

Dettagli

Appunti su Indipendenza Lineare di Vettori

Appunti su Indipendenza Lineare di Vettori Appunti su Indipendenza Lineare di Vettori Claudia Fassino a.a. Queste dispense, relative a una parte del corso di Matematica Computazionale (Laurea in Informatica), rappresentano solo un aiuto per lo

Dettagli

Fondamenti di Internet e Reti 097246

Fondamenti di Internet e Reti 097246 sul livello di Rete Instradamento. o Si consideri la rete in figura.. Si rappresenti, mediante un grafo, la rete per il calcolo dei cammini minimi (solo i nodi e gli archi no reti). Si calcoli il cammino

Dettagli

Il problema del commesso viaggiatore e problemi di vehicle routing

Il problema del commesso viaggiatore e problemi di vehicle routing Il problema del commesso viaggiatore e problemi di vehicle routing Laura Galli Dipartimento di Informatica Largo B. Pontecorvo 3, 56127 Pisa laura.galli@unipi.it http://www.di.unipi.it/~galli 2 Dicembre

Dettagli

1 SIGNIFICATO DEL DETERMINANTE

1 SIGNIFICATO DEL DETERMINANTE UNIVERSITÀ DEGLI STUDI DI ROMA LA SAPIENZA - Facoltà di Farmacia e Medicina - Corso di Laurea in CTF 1 SIGNIFICATO DEL DETERMINANTE Consideriamo il seguente problema: trovare l area del parallelogramma

Dettagli

Metodi & Modelli per le Scelte Economiche

Metodi & Modelli per le Scelte Economiche Metodi & Modelli per le Scelte Economiche [domande di teoria utilizzate in passato per la prova scritta le soluzioni NON vengono fornite, occorrerà quindi verificare la esattezza delle diverse possibili

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,...) memorizzazione compatta di sequenze (DNA) diffusione

Dettagli

4c. Esercizi sul livello di Rete Instradamento in Internet

4c. Esercizi sul livello di Rete Instradamento in Internet c. sul livello di Rete Instradamento in Internet c- o Si consideri la rete in figura. Si rappresenti, mediante un grafo, la rete per il calcolo dei cammini minimi (solo i nodi e gli archi no reti). Si

Dettagli

Formulario sui Prodotti Hermitiani Marcello Mamino Pisa, 24 v 2010

Formulario sui Prodotti Hermitiani Marcello Mamino Pisa, 24 v 2010 Formulario sui Prodotti Hermitiani Marcello Mamino Pisa, 24 v 2010 In quetsa dispensa: V è uno spazio vettoriale di dimensione d sul campo complesso C generato dai vettori v 1,..., v d. Le variabili m,

Dettagli

Diagrammi a blocchi 1

Diagrammi a blocchi 1 Diagrammi a blocchi 1 Sommario Diagrammi di flusso, o a blocchi. Analisi strutturata. Esercizi. 2 Diagrammi a blocchi È un linguaggio formale di tipo grafico per rappresentare gli algoritmi. Attraverso

Dettagli

Coverage. Visto che il coverage si basa su aree dell ambiente che vengono monitorate non è

Coverage. Visto che il coverage si basa su aree dell ambiente che vengono monitorate non è L. Pallottino, Sistemi Robotici Distribuiti - Versione del 10 Dicembre 2015 393 Coverage Si consideri ora il problema di coordinare una squadra di robot con dei sensori omnidirezionali in modo da garantire

Dettagli

La Gestione dei Progetti. Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena

La Gestione dei Progetti. Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena La Gestione dei Progetti Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Gestione di Progetti complessi Il termine progetto fa riferimento ad un vasto

Dettagli

IL METODO DEL SIMPLESSO

IL METODO DEL SIMPLESSO IL METODO DEL SIMPLESSO Il metodo del Simplesso 1 si applica nella risoluzione di un problema di Programmazione Lineare 2 (funzione e vincoli lineari) quando le variabili di azione o iniziali sono almeno

Dettagli

Esame di Ricerca Operativa del 15/01/2015

Esame di Ricerca Operativa del 15/01/2015 Esame di Ricerca Operativa del 1/01/01 (Cognome) (Nome) (Matricola) Esercizio 1. Un azienda produce palloni da basket e da calcio che vende rispettivamente a 1 e euro. L azienda compra ogni settimana 00

Dettagli

SISTEMI LINEARI: APPROFONDIMENTI ED ESEMPI

SISTEMI LINEARI: APPROFONDIMENTI ED ESEMPI SISTEMI LINEARI: APPROFONDIMENTI ED ESEMPI Appunti presi dalle lezioni del prof. Nedo Checcaglini Liceo Scientifico di Castiglion Fiorentino (Classe 4B) January 17, 005 1 SISTEMI LINEARI Se a ik, b i R,

Dettagli

Progettazione di Algoritmi

Progettazione di Algoritmi Corso di laurea in Informatica Prova scritta del: Progettazione di Algoritmi 1/01/016 Prof. De Prisco Inserire i propri dati nell apposito spazio. Non voltare la finché non sarà dato il via. Dal via avrai

Dettagli

Programmazione Lineare Intera. Programmazione Lineare Intera p. 1/4

Programmazione Lineare Intera. Programmazione Lineare Intera p. 1/4 Programmazione Lineare Intera Programmazione Lineare Intera p. 1/4 Programmazione Lineare Intera Problema di PLI in forma standard: max cx Ax = b x 0, x I n I insieme degli interi. Regione ammissibile:

Dettagli

( ) le colonne della matrice dei coefficienti, con. , risulta A 3 = A 1 + 4A 2 + 4A 5, A 4 = A 1 + A 2,

( ) le colonne della matrice dei coefficienti, con. , risulta A 3 = A 1 + 4A 2 + 4A 5, A 4 = A 1 + A 2, 1 Elementi di Analisi Matematica e Ricerca Operativa prova del 6 luglio 2016 1) Discutere il seguente problema di Programmazione Lineare: Trovare il massimo di p x 1, x 2, x 3, x 4 # x 2 + 4 x 3 + x 4

Dettagli

AUTOMA A STATI FINITI

AUTOMA A STATI FINITI Gli Automi Un Automa è un dispositivo, o un suo modello in forma di macchina sequenziale, creato per eseguire un particolare compito, che può trovarsi in diverse configurazioni più o meno complesse caratterizzate

Dettagli

Grafi (non orientati e connessi): minimo albero ricoprente

Grafi (non orientati e connessi): minimo albero ricoprente Grafi (non orientati e connessi): minimo albero ricoprente Una breve presentazione Definizioni Sia G=(V,E) un grafo non orientato e connesso. Un albero ricoprente di G è un sottografo T G tale che: T è

Dettagli

LEZIONE 12. v = α 1 v α n v n =

LEZIONE 12. v = α 1 v α n v n = LEZIONE 12 12.1. Combinazioni lineari. Definizione 12.1.1. Sia V uno spazio vettoriale su k = R, C e v 1,..., v n V vettori fissati. Un vettore v V si dice combinazione lineare di v 1,..., v n se esistono

Dettagli

Macchine sequenziali. Automa a Stati Finiti (ASF)

Macchine sequenziali. Automa a Stati Finiti (ASF) Corso di Calcolatori Elettronici I Macchine sequenziali Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle Tecnologie dell Informazione Corso

Dettagli

La Gestione dei Progetti. Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena

La Gestione dei Progetti. Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena La Gestione dei Progetti Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Gestione di Progetti complessi Il termine progetto fa riferimento ad un vasto

Dettagli

2. Risolvere con il metodo di eliminazione di Gauss con pivoting parziale il seguente sistema lineare:

2. Risolvere con il metodo di eliminazione di Gauss con pivoting parziale il seguente sistema lineare: Esercizi sui metodi diretti per la risoluzione di sistemi lineari 1. Data la matrice 1 0 2 1 3 1 5 2 1 determinare la sua fattorizzazione P LR. Risolvere il sistema Ax = b con b = (3, 5, 6) T mediante

Dettagli

Esecuzione concorrente di transazioni

Esecuzione concorrente di transazioni Esecuzione concorrente di transazioni A L B E R T O B E L U S S I P A R T E I A N N O A C C A D E M I C O 2 0 1 0-2 0 1 1 Osservazione Per gestire con prestazione accettabili il carico di lavoro tipico

Dettagli

Si consideri il sistema a coefficienti reali di m equazioni lineari in n incognite

Si consideri il sistema a coefficienti reali di m equazioni lineari in n incognite 3 Sistemi lineari 3 Generalità Si consideri il sistema a coefficienti reali di m equazioni lineari in n incognite ovvero, in forma matriciale, a x + a 2 x 2 + + a n x n = b a 2 x + a 22 x 2 + + a 2n x

Dettagli

Programmazione Lineare Intera

Programmazione Lineare Intera Programmazione Lineare Intera Andrea Scozzari a.a. 2012-2013 May 10, 2013 Andrea Scozzari (a.a. 2012-2013) Programmazione Lineare Intera May 10, 2013 1 / 16 Programmazione Lineare Intera: Metodo dei Piani

Dettagli

Esercitazione 5: Sistemi a risoluzione immediata.

Esercitazione 5: Sistemi a risoluzione immediata. Esercitazione 5: Sistemi a risoluzione immediata. Ipotesi: Supponiamo le matrici non singolari. Nota: Per verificare che si ha risolto correttamente il sistema lineare Ax = b basta calcolare la norma del

Dettagli

Algebra di Boole: minimizzazione di funzioni booleane

Algebra di Boole: minimizzazione di funzioni booleane Corso di Calcolatori Elettronici I A.A. 200-20 Algebra di Boole: minimizzazione di funzioni booleane Lezione 8 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Forme Ridotte p Vantaggi

Dettagli

Esercizi svolti di Programmazione Lineare. a cura di Laura Scrimali Dipartimento di Matematica e Informatica Università di Catania

Esercizi svolti di Programmazione Lineare. a cura di Laura Scrimali Dipartimento di Matematica e Informatica Università di Catania Esercizi svolti di Programmazione Lineare a cura di Laura Scrimali Dipartimento di Matematica e Informatica Università di Catania Formulazione matematica e risoluzione grafica Esercizio Una pasticceria

Dettagli

GRAFI. fig.1 - GRAFI (1) Si avvisa il lettore che certe definizioni che verranno date differiscono da quelle presenti in letteratura.

GRAFI. fig.1 - GRAFI (1) Si avvisa il lettore che certe definizioni che verranno date differiscono da quelle presenti in letteratura. GRAFI 1. Definizioni, terminologia, esempi e applicazioni (1) Un grafo orientato (o diretto o di-grafo) G è una coppia (V,E) dove V è un insieme non vuoto ed E una relazione binaria su V, E V V, ossia

Dettagli

Problemi di flusso a costo minimo

Problemi di flusso a costo minimo p. 1/7 Problemi di flusso a costo minimo È data una rete (grafo orientato e connesso) G = (V,A). (i,j) A c ij, costo di trasporto unitario lungo l arco (i, j). i V b i interi e tali che i V b i = 0. p.

Dettagli

POTENZE DI MATRICI QUADRATE

POTENZE DI MATRICI QUADRATE POTENZE DI MATRICI QUADRATE In alcune applicazioni pratiche, quali lo studio di sistemi dinamici discreti, può essere necessario calcolare le potenze A k, per k N\{0}, di una matrice quadrata A M n n (R)

Dettagli

4.5 Metodo del simplesso

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

Dettagli

Ricerca Operativa Note su Programmazione Lineare e Metodo del Simplesso (parte III)

Ricerca Operativa Note su Programmazione Lineare e Metodo del Simplesso (parte III) Ricerca Operativa Note su Programmazione Lineare e Metodo del Simplesso (parte III) L. De Giovanni AVVERTENZA: le note presentate di seguito non hanno alcuna pretesa di completezza, né hanno lo scopo di

Dettagli

Metodi per la risoluzione di sistemi lineari

Metodi per la risoluzione di sistemi lineari Metodi per la risoluzione di sistemi lineari Sistemi di equazioni lineari. Rango di matrici Come è noto (vedi [] sez.0.8), ad ogni matrice quadrata A è associato un numero reale det(a) detto determinante

Dettagli

Progettazione di Algoritmi

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

Dettagli

Minimo albero di copertura

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.

Dettagli

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

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

Dettagli

20 + 2y = 60 2y y = 10

20 + 2y = 60 2y y = 10 Esercizio 7.1 Il testo dell esercizio richiede di calcolare il prezzo ottimale per l impresa in concorrenza monopolistica (noto questo prezzo, è infatti possibile calcolare la variazione di prezzo richiesta).

Dettagli

Grafi: definizioni e visite

Grafi: definizioni e visite Grafi: definizioni e visite Grafi (non orientati) Grafo (non orientato): G = (V, E) V = nodi (o vertici) E = archi fra coppie di nodi distinti. Modella relazioni fra coppie di oggetti. Parametri della

Dettagli

CONSIGLI PER LA RISOLUZIONE DEI CIRCUITI ELETTRICI

CONSIGLI PER LA RISOLUZIONE DEI CIRCUITI ELETTRICI CONSIGLI PER L RISOLUZIONE DEI CIRCUITI ELETTRICI In questa lezione lo scopo è quello di mostrare che, con i principi e i teoremi proposti, si possono ottenere i risultati richiesti. Per mostrare l efficacia

Dettagli

Problemi di Flusso: Il modello del Trasporto

Problemi di Flusso: Il modello del Trasporto Problemi di Flusso: Il modello del rasporto Andrea Scozzari a.a. 2014-2015 April 27, 2015 Andrea Scozzari (a.a. 2014-2015) Problemi di Flusso: Il modello del rasporto April 27, 2015 1 / 25 Problemi su

Dettagli

Analisi delle corrispondenze

Analisi delle corrispondenze Capitolo 11 Analisi delle corrispondenze L obiettivo dell analisi delle corrispondenze, i cui primi sviluppi risalgono alla metà degli anni 60 in Francia ad opera di JP Benzécri e la sua equipe, è quello

Dettagli

Altrimenti, il M.C.D. di a e b è anche divisore di r (e.g. a=15,b=6,r=3 che è il M.C.D.)

Altrimenti, il M.C.D. di a e b è anche divisore di r (e.g. a=15,b=6,r=3 che è il M.C.D.) Elaboratore Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni sui dati digitale l informazione è rappresentata in forma numerica

Dettagli

Osservazione. Convergenza dei metodi di Gauss-Seidel e di Jacobi. Condizioni sufficienti per la convergenza. Definizione

Osservazione. Convergenza dei metodi di Gauss-Seidel e di Jacobi. Condizioni sufficienti per la convergenza. Definizione Osservazione Convergenza dei metodi di Gauss-Seidel e di Jacobi Fallimento dei metodi. (Es. Gauss- Seidel Condizioni sufficienti; teoremi di localizzazione degli autovalori; dimostrazione di convergenza

Dettagli

Matrici. Matrici.h Definizione dei tipi. Un po di esercizi sulle matrici Semplici. Media difficoltà. Difficili

Matrici. Matrici.h Definizione dei tipi. Un po di esercizi sulle matrici Semplici. Media difficoltà. Difficili Matrici Un po di esercizi sulle matrici Semplici Lettura e scrittura Calcolo della trasposta Media difficoltà Calcolo del determinante Difficili Soluzione di sistemi lineari È veramente difficile? 1 Matrici.h

Dettagli

Esercizi sui sistemi di equazioni lineari.

Esercizi sui sistemi di equazioni lineari. Esercizi sui sistemi di equazioni lineari Risolvere il sistema di equazioni lineari x y + z 6 x + y z x y z Si tratta di un sistema di tre equazioni lineari nelle tre incognite x, y e z Poichè m n, la

Dettagli

Problema dell albero di cammini minimi (SPT, Shortest Path Tree) o problema dei cammini minimi :

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

Dettagli

Esercitazione di Calcolo Numerico 1 22 Aprile Determinare la fattorizzazione LU della matrice a 1 1 A = 3a 2 a 2a a a 2 A =

Esercitazione di Calcolo Numerico 1 22 Aprile Determinare la fattorizzazione LU della matrice a 1 1 A = 3a 2 a 2a a a 2 A = Esercitazione di Calcolo Numerico 22 Aprile 29. Determinare la fattorizzazione LU della matrice a A = 3a 2 a 2a a a 2 ed utilizzarla per calcolare il det(a). 2. Calcolare il determinante della matrice

Dettagli

Calcolatori: Sistemi di Numerazione

Calcolatori: Sistemi di Numerazione Calcolatori: Sistemi di Numerazione Sistemi di Numerazione: introduzione In un Calcolatore, i Dati e le Istruzioni di un Programma sono codificate in forma inaria, ossia in una sequenza finita di e. Un

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

Analisi di un telaio a due livelli e maglie di forma generica secondo il Metodo degli Spostamenti (MdS)

Analisi di un telaio a due livelli e maglie di forma generica secondo il Metodo degli Spostamenti (MdS) Pagina 1 di 18 Analisi di un telaio a due livelli e maglie di forma generica secondo il Metodo degli Spostamenti (MdS) Schema Strutturale Valori numerici Si riportano nel seguito i valori numerici delle

Dettagli

LEZIONE 4. { x + y + z = 1 x y + 2z = 3

LEZIONE 4. { x + y + z = 1 x y + 2z = 3 LEZIONE 4 4.. Operazioni elementari di riga. Abbiamo visto, nella precedente lezione, quanto sia semplice risolvere sistemi di equazioni lineari aventi matrice incompleta fortemente ridotta per righe.

Dettagli

SISTEMI LINEARI. x y + 2t = 0 2x + y + z t = 0 x z t = 0 ; S 3 : ; S 5x 2y z = 1 4x 7y = 3

SISTEMI LINEARI. x y + 2t = 0 2x + y + z t = 0 x z t = 0 ; S 3 : ; S 5x 2y z = 1 4x 7y = 3 SISTEMI LINEARI. Esercizi Esercizio. Verificare se (,, ) è soluzione del sistema x y + z = x + y z = 3. Trovare poi tutte le soluzioni del sistema. Esercizio. Scrivere un sistema lineare di 3 equazioni

Dettagli

Soluzione dei Problemi di Programmazione Lineare

Soluzione dei Problemi di Programmazione Lineare Soluzione dei Problemi di Programmazione Lineare Consideriamo un problema di Programmazione Lineare (PL) con m vincoli ed n variabili in Forma Standard dove: ma 0 c A b ( ) 0 ( 2) R è il vettore n delle

Dettagli