HANDSHAKING
Σd(i) = 2m
Σdi+ = Σdi- = m
GRAFO COMPLETO
m = n(n-1)/2
GRAFO CONNESSO
M >= n-1
GRAFO ACICLICO
M <= n-1 → ALBERO
- Un albero con |V| > 1 → possibile chiuso 2 foglie
- Σd(i) = 2m = 2(n-1) = 2m-2)
- Un albero con |V| > 1 → esiste un cammino per ogni coppia di vertici
GRAFO BIPARTITO
ogni ciclo pari → un numero pari di spigoli
MATCHING
sottoinsieme di spigoli t.c. ogni vertice ha grado non superiore a 1
CLIQUE
sottoinsieme di vertici mutuamente adiacenti
INSIEME STABILE
sottoinsieme di vertici mutuamente non adiacenti
VERTEX COVER
sottoinsieme di vertici t.c. ogni spigolo è incidente in almeno un vertice
L’insieme stabile e il vertex cover sono complementari
COLORAZIONE
è una funzione che assegna due colori diversi ai vertici di uno stesso spigolo
CIRCUITO EULERIANO
x scritto se e solo se ogni vertice in m è pari
CICLO HAMILTONIANO
- Grafo connesso → EULERIANO ↔ ogni vertice ha grado pari
- Grafo hamiltoniano → d(u) + d(v) > m |∩ copia di vertici in g
ISOMORFISMO
Due grafi (G, V, E) e G’(V', E') si dicono isomorfi
Condizioni necessarie: card(V) = card(V'); l’immagine di un arco di t deve avere lo stesso grado
CONNESSIONE
- G-(u,v) ha 2 componenti connesso
- G+u,v ha 2 componenti connesso
HANDSHAKING
Σd(i) = 2m in un grafo
Σd+(i) = Σd-(i) = m in un digrafo ogni arco contribuisce una volta per il grado intero e una volta per il grado esterno.
GRAFO COMPLETO
M = m(n-1)/2
GRAFO CONNESSO
M >= <= M = N-1
GRAFO ACICLICO
M <= M = M-1
ALBERO (è un grafo)
- Un albero con |V| > 1 possibile chiuso 2 foglieΣd(i) = 2m = 2(m-1) = 2m-2
- Un albero con |V| > 1 permette un cammino per ogni copia di vertici
GRAFO BIPARTITO
ogni ciclo pari con un numeo di spiagge.
MATCHING: Sottieni di spigò t.c. su sottogroppo ricoprato ogni votre ha grado un superiore a 1.
CLIQUE: sottienne di votrici mutumente adiacenti
INSIEME STABILE: sottienne di votrici mutumente non adiacenti. Cardinalità α(G)
VERTEX COVER: sottienne di votrici t.c. ogni spigolo è incidento in almeno un votiche.Cardinalità W(G).
L'insieme stabile e il vertex cover sono complementari: m = |V| = d(G) + W(G)
COLORAZIONE:
e una funzione che assegna due colori diversi ai votrici di uno etoso spigalo.
CIRCUITO EULERIANO:
X scritto uno è uno solo voto ogni spigolo del grafo. Si allema se m % 2 = CIRCUITO EULERIANO.
CICLO HAMILTONIANO:
X suito su e una volta ogni votire alto pipare uoto alto grafo. In susneo una m (numero di votire).CONNESSIONE SUFFICIENTE: d(u) + d(v) >= n
ISOMORFISMO:
Due grafo G = (V, E) e G' = (V', E') diciono isomorfi. (f. g = g'') exsista une bijiezione t.c. Le suore e le relationi di adiacene tra coppi di votircia:
- E = E' ((x, y) E = ((π(x), π(y)) E'
- ψ: permutazionie tra coppi di votrici che preserva il grapoolerida:
- - d: assegna in segte ci e min auto le votoricci ci (d). Contion necessarie:bil usnime fib e f unbiatu con f . Fvogio xavon aver lo tnuto grapio suo:
Per tator che le adiacerute segu perovtrate si crenes an operinau permutaronetra alle 6 classo delle structure ci aiaceroner (mn X mn) ci di pff icir o di fra le cariacionci durcir.
CONNESSIONE:
- G = (U, V) ha K2 = a1 = 1 a/mu lade
- M: |U| = U ciascuno composto connesso
- M= |U| = U ciascuno composto connesso (Dote un grafo disconesso con K compacto connessi:
- - Un Grapho con m ≤ n composition compone
- - U compione commentosi etra i sue fly compone:
- la care con i grafi suoi a prize e due forie dua rimuoco are compio grafi connesso:
- grafo consoeso = EULERIANO aoni votrici tra grado pari
- mimisi accopo a un voto e una nospeti: n
GRAFO HAMILTONIANO:
d(u) + d(v) >= m V copio di votrici u, v
PERMUTAZIONI SEMPLICI
n!/a! · b!
PERMUTAZIONI CON RIPETIZIONE
n!/(n-k)!
DISPOSIZIONI SEMPLICI
n!/(n-k)!
DISPOSIZIONI CON RIPETIZIONE
nk
COMBINAZIONI SEMPLICI
n!/k! (n-k)!
COMBINAZIONI CON RIPETIZIONE
(n+k-1)/k!
DISPOSIZIONI
- (m+n)!/k! (m-k)!
- (m+n-1) 2
CICLI
- m!(m-n)!
- dove n elementi di un gruppo posso essere ripetuti in modo uguale
- Possibili sottograne: (m+n-1)2
- m!/((m-1)!)
DISPOSIZIONI
- m!(m-k)!
- dove m elementi di un gruppo possono essere ripetuti in modo uguale
MINIMO ALBERO RICOPRENTE
ALGORITMO DI PRIM
Si utilizza per ottenere un minimo albero ricoprente attraverso le condizioni di attualità sui tagli.
ALGORITMO DI PRIM-DIJKSTRA
Viene proposto per primi nei corsi di grafi deviati.
- Tabella: Partendo da un nodo considerato i tuoi adiacenti, inserendo (cij, pred(j)).
- Poi ad ogni iterazione successiva consideri il nodo con il costo minore tra tutti gli adiacenti e attui il procedimento.
ALGORITMO DI KRUSCAL
Si ordinano gli archi seguendo un ordine non decrescente di costo. Si crea una foresta composta da |V| singole generando le righe del costo minimo (seguendo l'ordine della lista) e a ciascuna unione utilizzano la condizione di attualità per i cammini.
- Tabella: 3 colonne che si comportano come le iterazioni, la lista dedicata ai singoli archi, i meli tutti fra te contemporaneamente non formano.
ALBERO DEI CAMMINI MINIMI
ALGORITMO DI FORD (teorico di etichettatura) label-correcting
Partendo da un nodo sorgente la etichette rappresentano il costo del cammino sul nodo sorgente.
- dj = di + cij
- Si crea una lista L dove vengono inserite le etichette dei nodi adiacenti al nodo considerato, togliamo e confrontiamo: se una delle precedenti etichette torna indietro o non soddisfattore la condizione di optimalità di BELLMAN, dj ≤ di + cij se non è verificato allora modifichi.
- dj ≤ di + cij
- Tabella: Ad ogni iterazione considero le etichette migliori degli adiacenti al nodo procedente.
ALGORITMO DI BELLMAN-FORD label-correcting
Nel caso di cicli di costo negativo , uso un aiuto di costo negativo ovvero dj ⇒ (–∞→∞) ∈ e = modifichi.
Si attua la tabella FIFO, sottaggio i nodi da L in ordine di entrata → ordine dei nodi
- dj = di + cij
ALGORITMO PER RETI ACICLICHE label-setting
Bisogna effettuare una visitazione topologica per verificare che la rete non aciclica.
- Tabella: 2 colonne dedicato ai nodi in ordine topologico, nella manche di arcj (dj = di + cij)
- nella torcia f (pred(j))
ALGORITMO DI DIJKSTRA label-setting
Quando la rete presenta costi non negativi.
- Tabella: Ad ogni iterazione sottaggio il nodo con etichetta minore dalla lista L delle adiacenze, poi ai suoi adiacenti ai nodi già estratti.
- Stato la tabella riportato i nodi presenti nella lista L.
ALGORITMI DI RICERCA
Sono utili per verificare se un grafo/digrafo è debolmente connesso o fortemente connesso.
ALGORITMO DI RICERCA IN AMPIEZZA (FIFO)
Se esistono coppie di nodi a distanza pari, e a distanza dispari non (E: I - III etc, I - IV etc)
- GRAFO BIPARTITO
ALGORITMO DI RICERCA IN PROFONDITÀ (LIFO)
Partendo da nodo iniziale identifico il cammino di conchiglta non visitato. Utilizzo una variabile DO All’uscita di ogni cammino FA Riutilizzo la variabile do con gli archi noti e riportasti.
ALGORITMO DI RICERCA INVERSA
Simile alla ricerca in ampiezza ma parte dai nodi senza considerare gli archi già estratti.
Un grafo/digrafo è DEBOLMENTE CONNESSO se tutti i nodi sono raggiungibili dopo l’algoritmo di ricerca diretta.
Un grafo/digrafo è FORTEMENTE CONNESSO se tutti i nodi sono raggiungibili dopo l’algoritmo di ricerca diretta e inversa.
ORDINAMENTO TOPOLOGICO
È utile per determinare se un digrafo è ACICLICO. Quindi devo avere necessariamente un nodo di grado interno nullo.
METODO: costruiamo una tabella dove in ogni colonna simbayano il numero degli archi estrarmi dal grafo di ogni giorno ogni iterazione.
Se il digrafo ammette un ordinamento topologico allora è aciclico.
ALGORITMO DI HIERHOLZER (grafi euloriani)
È utilizzato per determinare un circuito euloriano su un grafo i cui vertici possiedano grado pari.
CAMMINI ALTERNANTI AUMENTANTI
B=(X∪Y, E)
Y-completo ⟷ |Y|
-
Parte 1 Ricerca operativa
-
Ricerca operativa 2
-
Ricerca Operativa - modulo 1
-
Ricerca operativa 2 multiple