Programmazione Lineare Intera Flashcards

1
Q

Reticolo intero

A

La regione ammissibile di un problema di PLI è l’intersezione tra il poliedro e i punti che appartengono a Z^n, ovvero l’insieme dei vettori a componenti intere di dimensione n.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

In PLI, se x è sol.ne ottima di (P), ed è a componenti intere, allora…

A

allora x è soluzione del problema intero corrispondente, ovvero (Pi)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Se tutti i vertici di P sono a componenti intere…

A

Allora P ammette una sol.ne ottima a componenti intere.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Rilassamento continuo

A

Il rilassamento continuo di un problema di PLI è un problema identico, eccetto per il fatto che non contiene il vincolo di interezza.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Disuguaglianza Valida

A

Dati un vettore d in Rn e un reale gamma, l’espressione d*x >= gamma, si dice diseguaglianza valida, se è vero che vale per qualsiasi x che appartiene all’involucro convesso di S.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Sia x una sol.ne ottima del rilassamento continuo (RCp). Una diseguaglianza valida si dice piano di taglio se…

A

se aggiungendo la diseguaglianza ai vincoli del rilassamento continuo, si ottiene una regione ammissibile che approssima S (il reticolo intero) meglio di P, e “taglia fuori” la sol.ne ottima del relativo rilassamento continuo.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Come si costruisce un piano di taglio?

A

Bisogna scrivere il problema in forma duale, trovare una soluzione ottima del rilassamento continuo (RCd). Poi definire una matrice A trasposta, ottenuta moltiplicando An e Ab^(-1), dove le righe sono numerate secondo gli indici di N, e le colonne secondo gli indici di B.
Scegliamo un r, indice di base t.c. yr segnato non è intero.
J è l’indice di un vincolo non appartenente alla base, il cui Yj è uguale a zero nella soluzione.
Per ogni j, imponiamo che la parte frazionaria, dell’elemento di A trasposta di riga j, e di colonna r, moltiplicato per yj, sia maggiore o uguale alla parte frazionaria di yr segnato.
La diseguaglianza ottenuta è un piano di taglio per la soluzione y.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Parte frazionaria

A

La parte frazionaria di un numero si ottiene sottraendo ad un numero la sua parte intera.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Quali sono gli steps dell’algoritmo di Gomory?

A

Calcolare y segnato, sol.ne ottima di base del rilassamento continuo in forma duale.
Se y segnato è intero, abbiamo trovato la nostra soluzione.
Costruire un piano di taglio d*x >= gamma, relativo alla soluzione y segnato.
Aggiungere la diseguaglianza valida ai vincoli del rilassamento continuo in forma duale, e iterare da capo.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Cosa è un metodo enumerativo?

A

I metodi enumerativi sono una famiglia di metodi risolutivi che si applica ai problemi di PLI con un numero finito di soluzioni.
Sfruttano l’albero di enumerazione totale per analizzare il problema, valutando, direttamente o indirettamente, tutte le possibili soluzioni.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Quando conviene utilizzare un metodo enumerativo?

A
  • Problemi di PLI con un numero finito di soluzioni
  • Possibilità di enumerare “facilmente” le soluzioni
  • Particolarmente idonei per i problemi combinatori ovvero con variabili binarie.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Albero di enumerazione totale

A

E’ un albero radicato in un problema di base, dove i nodi di un determinato livello identificano una variabile e gli archi che portano al livello successivo i possibili valori della suddetta. Le foglie, indicano tutte le possibili soluzioni.
Ogni nodo individua un sotto-albero, che identifica un sotto-problema del problema originale.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

In un albero di enumerazione, ogni sottoproblema…

A

E’ analogo al problema originale ma con un numero inferiore di variabili.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Come stimare la qualità delle soluzioni di un sottoproblema?

A

Si considera un rilassamento, un problema che contiene tutte le soluzioni ammissibili del sottoproblema più altre.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Come viene utilizzato il rilassamento dall’algoritmo branch and bound?

A

L’algoritmo utilizza i rilassamenti come valutazioni superiori o inferiori della soluzione, a seconda che il problema sia di massimo o minimo

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Quali sono i quattro elementi di un algoritmo branch and bound?

A

1) una sol.ne ammissibile di partenza
2) un rilassamento del problema
3) regola di ramificazione
4) regole di potatura.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Quali sono le regole di potatura di un algoritmo B&B?

A

1) (Non-Ammissibilità) Il sottoalbero non contiene soluzioni ammissibili di P.
2) (Ottimizzazione) il valore ottimo del rilassamento del sottoproblema è peggiore, o non migliore, del valore della soluzione corrente.
3) (Ammissibilità) La soluzione ottima indivisuata per il rilassamento del sottoprob. è ammissibile per P.

18
Q

Se l’algoritmo B&B trova una nuova soluzione ammissibile, migliore della soluzione corrente…

A

La soluzione diventa la nostra nuova soluzione corrente.

19
Q

Qual è il problema dello zaino?

A

Dato uno zaino di capacità b, vogliamo inserire un certo numero di oggetti, rispettando il limite di peso, e massimizzando il beneficio.

20
Q

Cosa è il beneficio unitario, o rendimento, di un oggetto nel problema dello zaino?

A

E’ il rapporto tra il suo beneficio (ci) e il suo peso (ai)

21
Q

Qual è la tecnica euristica dei rendimenti discendenti?

A

Riordinando le variabili secondo benefici unitari, in ordine decrescente, inseriremo un oggetto nello zaino se il suo peso non è maggiore della capacità residua.

22
Q

A cosa serve la tecnica dei rendimenti discendenti?

A

Può essere una soluzione ammissibile di partenza nel problema dello zaino.

23
Q

Come funziona il rilassamento continuo che ammette valori frazionari?

A

Non lo so.

24
Q

A cosa serve il rilassamento continuo che ammette valori frazionari nel problema dello zaino?

A

E’ una valutazione superiore del problema.

25
Qual è il problema del commesso viaggiatore?
Un commesso viaggiatore vuole visitare n città (tornando infine alla città di partenza) minimizzando il percorso complessivo.
26
Definisci il ciclo Hamiltoniano
E' una sequenza di archi che inizia e finisce in uno stesso nodo, passando per gli altri nodi una sola volta.
27
Esprimi TSP in termini matematici
Dato un grafo orientato con un costo, o distanza, su ciascun arco, trovare il ciclo hamiltoniano di costo minimo.
28
Cosa è un k-albero?
E' un albero di copertura per il sottografo ottenuto rimuovendo k e gli archi incidenti in k, reinserendo poi k con 2 archi incidenti in k.
29
Un ciclo hamiltoniano è un k-albero
ma non tutti i k-alberi sono cicli hamiltoniani
30
Qual è un rilassamento del ciclo hamiltoniano?
Un k-albero sullo stesso grafo.
31
Un ciclo hamiltoniano, in relazione ad un k-albero..
Un ciclo hamiltoniano è un k-albero in cui ogni nodo ha grado 2.
32
Tecnica euristica del nodo più vicino
Tecnica utile per trovare una soluzione iniziale in TSP. Partendo da un nodo k, si procede aggiungendo via via tutti i nodi non ancora nel grafo, di costo minimo.
33
Come si usa il Branch and Bound applicato al problema del commesso viaggiatore?
Come sol.ne ammissibile di partenza si utilizza il risultato della tecnica euristica del nodo più vicino, ovvero, partendo dal nodo k, si aggiungono gli archi di costo minimo. Come rilassamento del problema si utilizza il k-albero di costo minimo. Le ramificazioni si effettuano imponendo di aggiungere, o rimuovere, l'arco di costo minimo. Le regole di potatura sono ovvie.
34
Problema dello Zaino: come si trova la soluzione del rilassamento?
Rilassamento I: utilizziamo il problema di partenza, senza il vincolo di binarietà, e il corrispondente problema duale: La soluzione ottima del duale risulta essere il massimo dei benefici unitari (beneficio/peso). L'indice del vincolo che viene soddisfatto come uguaglianza è detto k. Da cui la soluzione ottima del primale è che la componente i di x segnato è b/ai se i = k, altrimenti vale zero. Ovvero, il k-esimo componente è uguale a b (capacità) fratto il peso dell'oggetto k.
35
Problema dello Zaino: come si trova la soluzione del rilassamento? II
Rilassamento II: Un secondo rilassamento si può ottenere ammettendo soluzioni con valori frazionari, ma compresi tra 0 e 1. In questo caso, riutilizzando il riordinamento, do un indice da 1 ad n a ciascuno degli oggetti, sulla base del loro ordinamento. Ora, prendo un h tale che la somma del peso degli oggetti prima di h sia minore o uguale alla capacità, e la somma del peso degli oggetti da 1 ad h+1 sia maggiore della capacità. Questo significa che h è l'ultimo oggetto inseribile nello zaino. La soluzione ottima si ottiene facendo valere h e le componenti prima di h 1, facendo valere le componenti maggiori di h+1 0, e facendo valere h+1 il rapporto tra (b - la somma degli oggetti minori o uguali ad h) e il peso di h+1. Si avrà che il vincolo è soddisfatto.
36
Modifica il problema dello zaino per includere i seguenti vincoli "Se prendo l'oggetto 1 non posso prendere l'oggetto 2" "Se prendo l'oggetto 3 devo prendere anche l'oggetto 1" "Se prendo sia 1 che 2 allora devo prendere anche 3"
1) x1 + x2 <= 1 2) x1 -x3 >= 0 3) x1 + x2 <= x3 +1
37
Per il problema del Commesso Viaggiatore che relazione c'è tra un ciclo hamiltoniano e un k-albero?
Un ciclo hamiltoniano è il caso specifico di un k-albero in cui ogni nodo ha grado 2. Il k-albero di costo minimo è un rilassamento del problema del ciclo hamiltoniano perchè contiene le soluzioni ammissibili del ciclo hamiltoniano ed altre.
38
Nel Problema TSP come si può trovare una soluzione ammissibile?
Si trova una soluzione ammissibile con la tecnica euristica del nodo più vicino. Partendo da un k si aggiunge il nodo di costo minimo finché non si crea un ciclo.
39
-cos'è il rilassamento
Un rilassamento è un problema che contiene tutte le soluzioni ammissibili di un altro problema ma anche soluzioni non ammissibili per l'altro problema.
40
-formulare problema dello zaino
Dato uno zaino di capacità B, e un insieme di oggetti di peso ai e beneficio ci, inserire gli oggetti nello zaino in modo da massimizzare il beneficio totale e da non superare la capacità
41
Durante il branch & bound, quando posso chiudere in una volta sola tutti i nodi dell'albero?
Quando trovo una soluzione ammissibile per il problema di partenza migliore di tutte le previsioni più ottimistiche di tutti gli altri sottoproblemi.
42
- Come si trova il k-albero di costo minimo algoritmicamente
1) Il grafo originale è composto da un insieme di archi E e da un insieme di nodi V. Ora, eliminiamo da V un nodo k, e da E tutti i nodi incidenti in k. 2) Utilizziamo un algoritmo a scelta per ottenere l'albero di copertura di costo minimo. Ad esempio Prim. 3) Ora, aggiungiamo il nodo k 4) Aggiungiamo i due archi incidenti in k di costo minimo.