30.06.2013 Views

Problema del Commesso Viaggiatore 1 Introduzione 2 ... - Automatica

Problema del Commesso Viaggiatore 1 Introduzione 2 ... - Automatica

Problema del Commesso Viaggiatore 1 Introduzione 2 ... - Automatica

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

M. Monaci - <strong>Problema</strong> <strong>del</strong> <strong>Commesso</strong> <strong>Viaggiatore</strong> 7<br />

3 Formulazioni compatte<br />

Il risultato <strong>del</strong>la sezione precedente è estremamente importante dal punto di vista teorico,<br />

ma ha anche un riscontro pratico (in quanto il metodo funziona effettivamente in modo<br />

efficiente), e conferma i seguenti risultati di validità più generale:<br />

Teorema: Se il problema di separazione (o di generazione di colonne) è risolubile<br />

in tempo polinomiale (nella taglia <strong>del</strong> problema), allora anche il numero di iterazioni è<br />

polinomiale (nella taglia <strong>del</strong> problema).<br />

Proposizione: Se il problema di separazione (o di generazione di colonne) è formulabile<br />

come problema di programmazione di dimensione polinomiale (nella taglia <strong>del</strong> problema)<br />

in cui ˜x compare solo nel termine noto o solo nei costi, allora anche il problema<br />

originale è formulabile come LP di dimensione polinomiale (nella taglia <strong>del</strong> problema).<br />

Infatti, si consideri il problema (P)<br />

(P) min c T x (7)<br />

A x ≤ b (8)<br />

D x ≤ e (9)<br />

x ≥ 0 (10)<br />

nel quale immaginiamo che i vincoli (8) siano “pochi” mentre i vincoli (9) siano “molti”.<br />

Immaginiamo di voler risolvere il problema con un algoritmo di tipo cutting-plane, risolvendo<br />

ad ogni iterazione il problema di separazione dei vincoli (9), e che questo problema<br />

abbia la seguente forma.<br />

<strong>Problema</strong> di separazione: dato x, verificare se v ≥ 1 dove<br />

(S) v = max f T y<br />

G y ≤ H<br />

L y ≤ M(x)<br />

y ≥ 0<br />

dove M(x) è lineare in x ed il problema di separazione (S) ha taglia polinomiale in n.<br />

Questo corrisponde a dire che<br />

D x ≤ e ⇐⇒ v ≥ 1.<br />

Allora il problema (P) può essere riformulato nel seguente modo:<br />

(P) min c T x<br />

A x ≤ b<br />

x ≥ 0<br />

f T y ≥ 1<br />

G y ≤ H<br />

L y ≤ M(x)<br />

y ≥ 0<br />

cioè esiste una formulazione di dimensione polinomiale per (P).

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!