Programmazione Lineare Intera Flashcards
Reticolo intero
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.
In PLI, se x è sol.ne ottima di (P), ed è a componenti intere, allora…
allora x è soluzione del problema intero corrispondente, ovvero (Pi)
Se tutti i vertici di P sono a componenti intere…
Allora P ammette una sol.ne ottima a componenti intere.
Rilassamento continuo
Il rilassamento continuo di un problema di PLI è un problema identico, eccetto per il fatto che non contiene il vincolo di interezza.
Disuguaglianza Valida
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.
Sia x una sol.ne ottima del rilassamento continuo (RCp). Una diseguaglianza valida si dice piano di taglio se…
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.
Come si costruisce un piano di taglio?
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.
Parte frazionaria
La parte frazionaria di un numero si ottiene sottraendo ad un numero la sua parte intera.
Quali sono gli steps dell’algoritmo di Gomory?
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.
Cosa è un metodo enumerativo?
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.
Quando conviene utilizzare un metodo enumerativo?
- 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.
Albero di enumerazione totale
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.
In un albero di enumerazione, ogni sottoproblema…
E’ analogo al problema originale ma con un numero inferiore di variabili.
Come stimare la qualità delle soluzioni di un sottoproblema?
Si considera un rilassamento, un problema che contiene tutte le soluzioni ammissibili del sottoproblema più altre.
Come viene utilizzato il rilassamento dall’algoritmo branch and bound?
L’algoritmo utilizza i rilassamenti come valutazioni superiori o inferiori della soluzione, a seconda che il problema sia di massimo o minimo
Quali sono i quattro elementi di un algoritmo branch and bound?
1) una sol.ne ammissibile di partenza
2) un rilassamento del problema
3) regola di ramificazione
4) regole di potatura.
Quali sono le regole di potatura di un algoritmo B&B?
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.
Se l’algoritmo B&B trova una nuova soluzione ammissibile, migliore della soluzione corrente…
La soluzione diventa la nostra nuova soluzione corrente.
Qual è il problema dello zaino?
Dato uno zaino di capacità b, vogliamo inserire un certo numero di oggetti, rispettando il limite di peso, e massimizzando il beneficio.
Cosa è il beneficio unitario, o rendimento, di un oggetto nel problema dello zaino?
E’ il rapporto tra il suo beneficio (ci) e il suo peso (ai)
Qual è la tecnica euristica dei rendimenti discendenti?
Riordinando le variabili secondo benefici unitari, in ordine decrescente, inseriremo un oggetto nello zaino se il suo peso non è maggiore della capacità residua.
A cosa serve la tecnica dei rendimenti discendenti?
Può essere una soluzione ammissibile di partenza nel problema dello zaino.
Come funziona il rilassamento continuo che ammette valori frazionari?
Non lo so.
A cosa serve il rilassamento continuo che ammette valori frazionari nel problema dello zaino?
E’ una valutazione superiore del problema.