Esercizio 1
Applicare l'algoritmo primale-duale relativo al node-cover per trovare la soluzione 2-approssimata del problema. Individuare pertanto la sequenza di voli che garantisca il minimo costo.
Sono dati i seguenti pairings ammissibili:
- Berlino-Amsterdam-Atene {1,2,3}
- Roma-Budapest {4,5}
- Roma-Amsterdam-Helsinki {4,2,6}
- Helsinki-Londra {6,7}
- Berlino-Londra {1,7}
- Atene-Budapest {3,5}
Abbiamo I = {F1, F2, ..., F7} V servizio h = 1,...,7. Fn ⊆ J sono insiemi che contengono lo stesso servizio h. J = {1,...,6} pairings ammissibili.
Svolgimento
Determino gli Fn:
F1 = {1,5}
F2 = {1,3}
F3 = {1,6}
F4 = {2,3}
F5 = {2,6}
F6 = {3,4}
F7 = {4,5}
T ⊆ J è un cover ⟺ |Fi ∩ T| ≥ 1 ∀ Fi ∈ I.
Nodi := pairings ammissibili.
Archi := Fi.
Vediamo che ogni arco sia coperto.
Esercizio 1
Applicare l'algoritmo primale-duale relativo al Node-Cover per trovare la soluzione 2-approssimata del problema. Individuare pertanto la sequenza di voli che garantisca il minimo costo.
Sono dati i seguenti pairings ammissibili:
- Berlino - Amsterdam - Atene {1, 2, 3}
- Roma - Budapest {4, 5}
- Roma - Amsterdam - Helsinki {4, 2, 6}
- Helsinki - Londra {6, 7}
- Berlino - Londra {1, 7}
- Atene - Budapest {3, 5}
Abbiamo I = {F1, F2, ..., F7} ∀ servizio ń = 1, ..., 7. Fn ⊆ J sono insiemi che contengono lo stesso servizio ń J = {1, ..., 6} pairings ammissibili.
Svolgimento
Determino gli Fn:
F1 = {1, 5}
F2 = {1, 3}
F3 = {1, 6}
F4 = {2, 3}
F5 = {2, 6}
F6 = {3, 4}
F7 = {4, 5}
T ⊆ J è un cover <=> |Fi ∩ T| ≥ 1 ∀ Fi ∈ I.
Nodi := pairings ammissibili.
Archi := Fi.
Vogliamo che ogni arco sia coperto.
Vogliamo trovare il cammino a costo minimo.
Definiamo primale e duale
Primale
min cTu
ΣeεF ue ≥ 1 FεI
ue ≥ 0 eεJ
Duale
max 1Ty
ΣFεI yF ≤ ce eεJ
yF ≥ 0 FεI
F1 u1 + u5 ≥ 1
F2 u1 + u3 ≥ 1
F3 u1 + u6 ≥ 1
F4 u2 + u3 ≥ 1
F5 u2 + u6 ≥ 1
F6 u3 + u4 ≥ 1
F7 u4 + u5 ≥ 1
u1, ..., u6 ≥ 0
Passo Φ
Scelgo una soluzione iniziale.
Passo 1
Scelgo una &overline;F=> Aggiungo J¯: J¯ = J¯ ∪ {1,3} = {1,3}=> Aggiungo Y¯F2 = 1=> Aggiungo T - J¯ = {1,3}
Passo 2
Scelgo una F¯ che non interseca J¯: F¯ = F5 = {2,6} ^ {1,3} = ∅.
Infatti in J¯ = {1,3} non ci sono {2,6}=> non avrei potuto inserire F1, F3, F4, F6.
=> Aggiungo YF = Y¯F5 = Y¯F5 + min{2,6} (ce - ΣY¯F)= 0 + min{(1 - Y¯F4 - YF5), (1 - Y¯F3 - YF5)}{2,6}= 0 + min{(1,1)}{2,6} = 1=> Aggiungo J¯: J¯ = J¯ ∪ {2,6} = {1,3,2,6}=> Aggiungo Y¯ = Y¯F5 = 1=> Aggiungo T - J¯ = {1,3,2,6}
Passo 3
Scelgo una F¯ che non interseca J¯:=> F¯ = F7 = {4,5}
Aggiungo YF¯ = Y¯F7 = Y¯F7 + minc∈F¯ (ce - ΣY¯
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.