Top Banner
Implementazione di un algoritmo distribuito per l’assegnazione del traffico aereo Matteo Buriola Dipartimento di matematica e geoscienze Università degli Studi di Trieste 10 Marzo 2016 - Tesi di Laurea Magistrale Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 1 / 22
111

Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Apr 15, 2017

Download

Engineering

Katter Katter
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Implementazione di un algoritmo distribuito perl’assegnazione del traffico aereo

Matteo Buriola

Dipartimento di matematica e geoscienzeUniversità degli Studi di Trieste

10 Marzo 2016 - Tesi di Laurea Magistrale

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 1 / 22

Page 2: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Introduzione

Compagnie aeree

In competizione tra loroRicercano il profitto

Autorità di controllo

Sicurezza ed efficenzaOrganizzazione in settori

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 2 / 22

Page 3: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Introduzione

Compagnie aeree

In competizione tra loroRicercano il profitto

Autorità di controllo

Sicurezza ed efficenzaOrganizzazione in settori

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 2 / 22

Page 4: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Introduzione

Compagnie aereeIn competizione tra loro

Ricercano il profittoAutorità di controllo

Sicurezza ed efficenzaOrganizzazione in settori

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 2 / 22

Page 5: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Introduzione

Compagnie aereeIn competizione tra loroRicercano il profitto

Autorità di controllo

Sicurezza ed efficenzaOrganizzazione in settori

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 2 / 22

Page 6: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Introduzione

Compagnie aereeIn competizione tra loroRicercano il profitto

Autorità di controllo

Sicurezza ed efficenzaOrganizzazione in settori

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 2 / 22

Page 7: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Introduzione

Compagnie aereeIn competizione tra loroRicercano il profitto

Autorità di controlloSicurezza ed efficenza

Organizzazione in settori

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 2 / 22

Page 8: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Introduzione

Compagnie aereeIn competizione tra loroRicercano il profitto

Autorità di controlloSicurezza ed efficenzaOrganizzazione in settori

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 2 / 22

Page 9: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Regolamentazione

Riduzione della capacità in un settore per un tempo t .Imposizione di un tetto al numero di voliSuddivisione di t in finestre temporali o slot.Assegnazione degli slot.

Generazione di un ritardo =⇒ Aumento dei costi

Obiettivo:

Una procedura per ridurre i costi tramite lo scambio di slot e checoinvolga le compagnie aeree nel processo decisionale

Individual Rationality: nessuno ci rimette.Budget Balanced: nessuna sovvenzione esterna.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 3 / 22

Page 10: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Regolamentazione

Riduzione della capacità in un settore per un tempo t .

Imposizione di un tetto al numero di voliSuddivisione di t in finestre temporali o slot.Assegnazione degli slot.

Generazione di un ritardo =⇒ Aumento dei costi

Obiettivo:

Una procedura per ridurre i costi tramite lo scambio di slot e checoinvolga le compagnie aeree nel processo decisionale

Individual Rationality: nessuno ci rimette.Budget Balanced: nessuna sovvenzione esterna.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 3 / 22

Page 11: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Regolamentazione

Riduzione della capacità in un settore per un tempo t .Imposizione di un tetto al numero di voli

Suddivisione di t in finestre temporali o slot.Assegnazione degli slot.

Generazione di un ritardo =⇒ Aumento dei costi

Obiettivo:

Una procedura per ridurre i costi tramite lo scambio di slot e checoinvolga le compagnie aeree nel processo decisionale

Individual Rationality: nessuno ci rimette.Budget Balanced: nessuna sovvenzione esterna.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 3 / 22

Page 12: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Regolamentazione

Riduzione della capacità in un settore per un tempo t .Imposizione di un tetto al numero di voliSuddivisione di t in finestre temporali o slot.

Assegnazione degli slot.

Generazione di un ritardo =⇒ Aumento dei costi

Obiettivo:

Una procedura per ridurre i costi tramite lo scambio di slot e checoinvolga le compagnie aeree nel processo decisionale

Individual Rationality: nessuno ci rimette.Budget Balanced: nessuna sovvenzione esterna.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 3 / 22

Page 13: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Regolamentazione

Riduzione della capacità in un settore per un tempo t .Imposizione di un tetto al numero di voliSuddivisione di t in finestre temporali o slot.Assegnazione degli slot.

Generazione di un ritardo =⇒ Aumento dei costi

Obiettivo:

Una procedura per ridurre i costi tramite lo scambio di slot e checoinvolga le compagnie aeree nel processo decisionale

Individual Rationality: nessuno ci rimette.Budget Balanced: nessuna sovvenzione esterna.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 3 / 22

Page 14: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Regolamentazione

Riduzione della capacità in un settore per un tempo t .Imposizione di un tetto al numero di voliSuddivisione di t in finestre temporali o slot.Assegnazione degli slot.

Generazione di un ritardo

=⇒ Aumento dei costi

Obiettivo:

Una procedura per ridurre i costi tramite lo scambio di slot e checoinvolga le compagnie aeree nel processo decisionale

Individual Rationality: nessuno ci rimette.Budget Balanced: nessuna sovvenzione esterna.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 3 / 22

Page 15: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Regolamentazione

Riduzione della capacità in un settore per un tempo t .Imposizione di un tetto al numero di voliSuddivisione di t in finestre temporali o slot.Assegnazione degli slot.

Generazione di un ritardo =⇒ Aumento dei costi

Obiettivo:

Una procedura per ridurre i costi tramite lo scambio di slot e checoinvolga le compagnie aeree nel processo decisionale

Individual Rationality: nessuno ci rimette.Budget Balanced: nessuna sovvenzione esterna.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 3 / 22

Page 16: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Regolamentazione

Riduzione della capacità in un settore per un tempo t .Imposizione di un tetto al numero di voliSuddivisione di t in finestre temporali o slot.Assegnazione degli slot.

Generazione di un ritardo =⇒ Aumento dei costi

Obiettivo:

Una procedura per ridurre i costi tramite lo scambio di slot e checoinvolga le compagnie aeree nel processo decisionale

Individual Rationality: nessuno ci rimette.Budget Balanced: nessuna sovvenzione esterna.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 3 / 22

Page 17: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Regolamentazione

Riduzione della capacità in un settore per un tempo t .Imposizione di un tetto al numero di voliSuddivisione di t in finestre temporali o slot.Assegnazione degli slot.

Generazione di un ritardo =⇒ Aumento dei costi

Obiettivo:Una procedura per ridurre i costi tramite lo scambio di slot e checoinvolga le compagnie aeree nel processo decisionale

Individual Rationality: nessuno ci rimette.Budget Balanced: nessuna sovvenzione esterna.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 3 / 22

Page 18: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Regolamentazione

Riduzione della capacità in un settore per un tempo t .Imposizione di un tetto al numero di voliSuddivisione di t in finestre temporali o slot.Assegnazione degli slot.

Generazione di un ritardo =⇒ Aumento dei costi

Obiettivo:Una procedura per ridurre i costi tramite lo scambio di slot e checoinvolga le compagnie aeree nel processo decisionale

Individual Rationality: nessuno ci rimette.

Budget Balanced: nessuna sovvenzione esterna.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 3 / 22

Page 19: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Regolamentazione

Riduzione della capacità in un settore per un tempo t .Imposizione di un tetto al numero di voliSuddivisione di t in finestre temporali o slot.Assegnazione degli slot.

Generazione di un ritardo =⇒ Aumento dei costi

Obiettivo:Una procedura per ridurre i costi tramite lo scambio di slot e checoinvolga le compagnie aeree nel processo decisionale

Individual Rationality: nessuno ci rimette.Budget Balanced: nessuna sovvenzione esterna.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 3 / 22

Page 20: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Definizioni

Siano

F = { 1,. . . , F } un insieme di voli.S = {1,. . . , S } un insieme di settori con capacità limitata.Is e Us l’orario di inizio e di fine della regolamentazione per ilsettore sSf una successione di elementi di S che f deve attraversare, doveEs

f è il tempo previsto di entrata di f nel settore s e Esf − Es′

f iltempo di volo di f attraverso una coppia consecutiva di elementis, s′ ∈ Sf .

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 4 / 22

Page 21: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Definizioni

SianoF = { 1,. . . , F } un insieme di voli.

S = {1,. . . , S } un insieme di settori con capacità limitata.Is e Us l’orario di inizio e di fine della regolamentazione per ilsettore sSf una successione di elementi di S che f deve attraversare, doveEs

f è il tempo previsto di entrata di f nel settore s e Esf − Es′

f iltempo di volo di f attraverso una coppia consecutiva di elementis, s′ ∈ Sf .

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 4 / 22

Page 22: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Definizioni

SianoF = { 1,. . . , F } un insieme di voli.S = {1,. . . , S } un insieme di settori con capacità limitata.

Is e Us l’orario di inizio e di fine della regolamentazione per ilsettore sSf una successione di elementi di S che f deve attraversare, doveEs

f è il tempo previsto di entrata di f nel settore s e Esf − Es′

f iltempo di volo di f attraverso una coppia consecutiva di elementis, s′ ∈ Sf .

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 4 / 22

Page 23: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Definizioni

SianoF = { 1,. . . , F } un insieme di voli.S = {1,. . . , S } un insieme di settori con capacità limitata.Is e Us l’orario di inizio e di fine della regolamentazione per ilsettore s

Sf una successione di elementi di S che f deve attraversare, doveEs

f è il tempo previsto di entrata di f nel settore s e Esf − Es′

f iltempo di volo di f attraverso una coppia consecutiva di elementis, s′ ∈ Sf .

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 4 / 22

Page 24: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Definizioni

SianoF = { 1,. . . , F } un insieme di voli.S = {1,. . . , S } un insieme di settori con capacità limitata.Is e Us l’orario di inizio e di fine della regolamentazione per ilsettore sSf una successione di elementi di S che f deve attraversare, doveEs

f è il tempo previsto di entrata di f nel settore s e Esf − Es′

f iltempo di volo di f attraverso una coppia consecutiva di elementis, s′ ∈ Sf .

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 4 / 22

Page 25: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Settori e slot

Ogni settore s è caratterizzato da

una capacità limitata Ks di entrate all’ora,una lista di assegnazione Ls composta da Ns = bKs

Us−Is60 c

elementi, chiamati slot, con capacità unitaria.

Denotiamo il generico js-esimo slot in Ls come l’intervallo di tempo[Ijs ,Ujs ] dove

Ijs = Is+

⌊(js − 1) · 60

Ks

⌋Ujs = Ijs+1 − 1

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 5 / 22

Page 26: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Settori e slot

Ogni settore s è caratterizzato da

una capacità limitata Ks di entrate all’ora,

una lista di assegnazione Ls composta da Ns = bKsUs−Is

60 celementi, chiamati slot, con capacità unitaria.

Denotiamo il generico js-esimo slot in Ls come l’intervallo di tempo[Ijs ,Ujs ] dove

Ijs = Is+

⌊(js − 1) · 60

Ks

⌋Ujs = Ijs+1 − 1

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 5 / 22

Page 27: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Settori e slot

Ogni settore s è caratterizzato da

una capacità limitata Ks di entrate all’ora,una lista di assegnazione Ls composta da Ns = bKs

Us−Is60 c

elementi, chiamati slot, con capacità unitaria.

Denotiamo il generico js-esimo slot in Ls come l’intervallo di tempo[Ijs ,Ujs ] dove

Ijs = Is+

⌊(js − 1) · 60

Ks

⌋Ujs = Ijs+1 − 1

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 5 / 22

Page 28: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Settori e slot

Ogni settore s è caratterizzato da

una capacità limitata Ks di entrate all’ora,una lista di assegnazione Ls composta da Ns = bKs

Us−Is60 c

elementi, chiamati slot, con capacità unitaria.

Denotiamo il generico js-esimo slot in Ls come l’intervallo di tempo[Ijs ,Ujs ] dove

Ijs = Is+

⌊(js − 1) · 60

Ks

⌋Ujs = Ijs+1 − 1

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 5 / 22

Page 29: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Voli e rotte

Una serie qf = [r1, . . . , r|Sf |] di slot deve essere assegnata ad ogni volo,tenendo conto che uno slot ri può essere assegnato al volo f solo setermina dopo E i

f , cioè E if ≤ Uri , ∀ri ∈ qf , i ∈ Sf .

Uno slot qf può causare un ritardo al volo f pari aDefiniamo quindi il ritardo dqf

f della serie qf come

d fqf = max

i∈Sf

{max(Iri − E if ,0)}

Ogni ritardo dqff causa un costo C(f ,qf ) ≥ 0.

Diciamo che una serie qf è accettabile per il volo f se:

Esiste uno slot ri per ogni i ∈ Sf con E if ≤ Uri

Iri e Uri per ogni coppia i , j di settori consecutivi in Sf sonocompatibili con il tempo di volo E j

f − E if

Il ritardo dqff è vincolato tra 0 e un valore massimo MaxDelf , oltre il

quale il costo diventa eccessivo e il volo viene cancellato.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 6 / 22

Page 30: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Voli e rotte

Una serie qf = [r1, . . . , r|Sf |] di slot deve essere assegnata ad ogni volo,tenendo conto che uno slot ri può essere assegnato al volo f solo setermina dopo E i

f , cioè E if ≤ Uri , ∀ri ∈ qf , i ∈ Sf .

Uno slot qf può causare un ritardo al volo f pari a

Definiamo quindi il ritardo dqff della serie qf come

d fqf = max

i∈Sf

{

max(Iri − E if ,0)

}

Ogni ritardo dqff causa un costo C(f ,qf ) ≥ 0.

Diciamo che una serie qf è accettabile per il volo f se:

Esiste uno slot ri per ogni i ∈ Sf con E if ≤ Uri

Iri e Uri per ogni coppia i , j di settori consecutivi in Sf sonocompatibili con il tempo di volo E j

f − E if

Il ritardo dqff è vincolato tra 0 e un valore massimo MaxDelf , oltre il

quale il costo diventa eccessivo e il volo viene cancellato.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 6 / 22

Page 31: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Voli e rotte

Una serie qf = [r1, . . . , r|Sf |] di slot deve essere assegnata ad ogni volo,tenendo conto che uno slot ri può essere assegnato al volo f solo setermina dopo E i

f , cioè E if ≤ Uri , ∀ri ∈ qf , i ∈ Sf .

Uno slot qf può causare un ritardo al volo f pari a

Definiamo quindi il ritardo dqff della serie qf come

d fqf = max

i∈Sf

{max(Iri − E if ,0)}

Ogni ritardo dqff causa un costo C(f ,qf ) ≥ 0.

Diciamo che una serie qf è accettabile per il volo f se:

Esiste uno slot ri per ogni i ∈ Sf con E if ≤ Uri

Iri e Uri per ogni coppia i , j di settori consecutivi in Sf sonocompatibili con il tempo di volo E j

f − E if

Il ritardo dqff è vincolato tra 0 e un valore massimo MaxDelf , oltre il

quale il costo diventa eccessivo e il volo viene cancellato.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 6 / 22

Page 32: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Voli e rotte

Una serie qf = [r1, . . . , r|Sf |] di slot deve essere assegnata ad ogni volo,tenendo conto che uno slot ri può essere assegnato al volo f solo setermina dopo E i

f , cioè E if ≤ Uri , ∀ri ∈ qf , i ∈ Sf .

Uno slot qf può causare un ritardo al volo f pari a

Definiamo quindi il ritardo dqff della serie qf come

d fqf = max

i∈Sf

{max(Iri − E if ,0)}

Ogni ritardo dqff causa un costo C(f ,qf ) ≥ 0.

Diciamo che una serie qf è accettabile per il volo f se:

Esiste uno slot ri per ogni i ∈ Sf con E if ≤ Uri

Iri e Uri per ogni coppia i , j di settori consecutivi in Sf sonocompatibili con il tempo di volo E j

f − E if

Il ritardo dqff è vincolato tra 0 e un valore massimo MaxDelf , oltre il

quale il costo diventa eccessivo e il volo viene cancellato.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 6 / 22

Page 33: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Voli e rotte

Una serie qf = [r1, . . . , r|Sf |] di slot deve essere assegnata ad ogni volo,tenendo conto che uno slot ri può essere assegnato al volo f solo setermina dopo E i

f , cioè E if ≤ Uri , ∀ri ∈ qf , i ∈ Sf .

Uno slot qf può causare un ritardo al volo f pari a

Definiamo quindi il ritardo dqff della serie qf come

d fqf = max

i∈Sf

{max(Iri − E if ,0)}

Ogni ritardo dqff causa un costo C(f ,qf ) ≥ 0.

Diciamo che una serie qf è accettabile per il volo f se:

Esiste uno slot ri per ogni i ∈ Sf con E if ≤ Uri

Iri e Uri per ogni coppia i , j di settori consecutivi in Sf sonocompatibili con il tempo di volo E j

f − E if

Il ritardo dqff è vincolato tra 0 e un valore massimo MaxDelf , oltre il

quale il costo diventa eccessivo e il volo viene cancellato.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 6 / 22

Page 34: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Voli e rotte

Una serie qf = [r1, . . . , r|Sf |] di slot deve essere assegnata ad ogni volo,tenendo conto che uno slot ri può essere assegnato al volo f solo setermina dopo E i

f , cioè E if ≤ Uri , ∀ri ∈ qf , i ∈ Sf .

Uno slot qf può causare un ritardo al volo f pari a

Definiamo quindi il ritardo dqff della serie qf come

d fqf = max

i∈Sf

{max(Iri − E if ,0)}

Ogni ritardo dqff causa un costo C(f ,qf ) ≥ 0.

Diciamo che una serie qf è accettabile per il volo f se:

Esiste uno slot ri per ogni i ∈ Sf con E if ≤ Uri

Iri e Uri per ogni coppia i , j di settori consecutivi in Sf sonocompatibili con il tempo di volo E j

f − E if

Il ritardo dqff è vincolato tra 0 e un valore massimo MaxDelf , oltre il

quale il costo diventa eccessivo e il volo viene cancellato.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 6 / 22

Page 35: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Voli e rotte

Una serie qf = [r1, . . . , r|Sf |] di slot deve essere assegnata ad ogni volo,tenendo conto che uno slot ri può essere assegnato al volo f solo setermina dopo E i

f , cioè E if ≤ Uri , ∀ri ∈ qf , i ∈ Sf .

Uno slot qf può causare un ritardo al volo f pari a

Definiamo quindi il ritardo dqff della serie qf come

d fqf = max

i∈Sf

{max(Iri − E if ,0)}

Ogni ritardo dqff causa un costo C(f ,qf ) ≥ 0.

Diciamo che una serie qf è accettabile per il volo f se:

Esiste uno slot ri per ogni i ∈ Sf con E if ≤ Uri

Iri e Uri per ogni coppia i , j di settori consecutivi in Sf sonocompatibili con il tempo di volo E j

f − E if

Il ritardo dqff è vincolato tra 0 e un valore massimo MaxDelf , oltre il

quale il costo diventa eccessivo e il volo viene cancellato.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 6 / 22

Page 36: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Voli e rotte

Una serie qf = [r1, . . . , r|Sf |] di slot deve essere assegnata ad ogni volo,tenendo conto che uno slot ri può essere assegnato al volo f solo setermina dopo E i

f , cioè E if ≤ Uri , ∀ri ∈ qf , i ∈ Sf .

Uno slot qf può causare un ritardo al volo f pari a

Definiamo quindi il ritardo dqff della serie qf come

d fqf = max

i∈Sf

{max(Iri − E if ,0)}

Ogni ritardo dqff causa un costo C(f ,qf ) ≥ 0.

Diciamo che una serie qf è accettabile per il volo f se:

Esiste uno slot ri per ogni i ∈ Sf con E if ≤ Uri

Iri e Uri per ogni coppia i , j di settori consecutivi in Sf sonocompatibili con il tempo di volo E j

f − E if

Il ritardo dqff è vincolato tra 0 e un valore massimo MaxDelf , oltre il

quale il costo diventa eccessivo e il volo viene cancellato.Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 6 / 22

Page 37: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Problema

Trovare una serie di rotte X ∗ = {q∗1, . . . ,q∗F} che minimizzino il costototale dei ritardi

∑f∈F C(f ,q∗)

ZIP = min∑f∈F

∑q∈Qf

C(f ,q)x(f ,q)

∑f∈F

∑q∈Qf :q3r

x(f ,q) ≤ 1 ∀r ∈ L

∑q∈Qf

x(f ,q) = 1 ∀f ∈ F

x(f ,q) ∈ {0,1} ∀f ∈ F ,q ∈ Qf

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 7 / 22

Page 38: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Problema

Trovare una serie di rotte X ∗ = {q∗1, . . . ,q∗F} che minimizzino il costototale dei ritardi

∑f∈F C(f ,q∗)

ZIP = min∑f∈F

∑q∈Qf

C(f ,q)x(f ,q)

∑f∈F

∑q∈Qf :q3r

x(f ,q) ≤ 1 ∀r ∈ L

∑q∈Qf

x(f ,q) = 1 ∀f ∈ F

x(f ,q) ∈ {0,1} ∀f ∈ F ,q ∈ Qf

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 7 / 22

Page 39: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Problema

Trovare una serie di rotte X ∗ = {q∗1, . . . ,q∗F} che minimizzino il costototale dei ritardi

∑f∈F C(f ,q∗)

ZIP = min∑f∈F

∑q∈Qf

C(f ,q)x(f ,q)

∑f∈F

∑q∈Qf :q3r

x(f ,q) ≤ 1 ∀r ∈ L

∑q∈Qf

x(f ,q) = 1 ∀f ∈ F

x(f ,q) ∈ {0,1} ∀f ∈ F ,q ∈ Qf

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 7 / 22

Page 40: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Problema

Trovare una serie di rotte X ∗ = {q∗1, . . . ,q∗F} che minimizzino il costototale dei ritardi

∑f∈F C(f ,q∗)

ZIP = min∑f∈F

∑q∈Qf

C(f ,q)x(f ,q)

∑f∈F

∑q∈Qf :q3r

x(f ,q) ≤ 1 ∀r ∈ L

∑q∈Qf

x(f ,q) = 1 ∀f ∈ F

x(f ,q) ∈ {0,1} ∀f ∈ F ,q ∈ Qf

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 7 / 22

Page 41: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Problema

Trovare una serie di rotte X ∗ = {q∗1, . . . ,q∗F} che minimizzino il costototale dei ritardi

∑f∈F C(f ,q∗)

ZIP = min∑f∈F

∑q∈Qf

C(f ,q)x(f ,q)

∑f∈F

∑q∈Qf :q3r

x(f ,q) ≤ 1 ∀r ∈ L

∑q∈Qf

x(f ,q) = 1 ∀f ∈ F

x(f ,q) ∈ {0,1} ∀f ∈ F ,q ∈ Qf

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 7 / 22

Page 42: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Problema

Trovare una serie di rotte X ∗ = {q∗1, . . . ,q∗F} che minimizzino il costototale dei ritardi

∑f∈F C(f ,q∗)

ZIP = min∑f∈F

∑q∈Qf

C(f ,q)x(f ,q)

∑f∈F

∑q∈Qf :q3r

x(f ,q) ≤ 1 ∀r ∈ L

∑q∈Qf

x(f ,q) = 1 ∀f ∈ F

x(f ,q) ∈ {0,1} ∀f ∈ F ,q ∈ Qf

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 7 / 22

Page 43: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Scambio di rotte

Il Network Manager risolve il problema e calcola i prezzi della rotteP = {p(q∗1), . . . ,p(q∗F )}.

Questo metodo non soddisfa la proprietà IR

Si procede in due passi

si assegna, senza nessun costo, un insieme di rotteA = {a1, . . . ,aF} ai voli, seguendo lo standard FPFSsi permette lo scambio di rotte tra i voli. Ogni volo per cui af 6= q∗fpaga il prezzo p(q∗f ) per la sua rotta ottimale e riceve p(af ) comerimborso per la restituzione della rotta af , variando così il suoprofitto di

∆u(f ,e∗) = [C(f ,af )− C(f ,q∗f )]− [p(q∗f )− p(af )] =

= −C(f ,e∗f )− p(e∗f )

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 8 / 22

Page 44: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Scambio di rotte

Il Network Manager risolve il problema e calcola i prezzi della rotteP = {p(q∗1), . . . ,p(q∗F )}. Questo metodo non soddisfa la proprietà IR

Si procede in due passi

si assegna, senza nessun costo, un insieme di rotteA = {a1, . . . ,aF} ai voli, seguendo lo standard FPFSsi permette lo scambio di rotte tra i voli. Ogni volo per cui af 6= q∗fpaga il prezzo p(q∗f ) per la sua rotta ottimale e riceve p(af ) comerimborso per la restituzione della rotta af , variando così il suoprofitto di

∆u(f ,e∗) = [C(f ,af )− C(f ,q∗f )]− [p(q∗f )− p(af )] =

= −C(f ,e∗f )− p(e∗f )

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 8 / 22

Page 45: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Scambio di rotte

Il Network Manager risolve il problema e calcola i prezzi della rotteP = {p(q∗1), . . . ,p(q∗F )}. Questo metodo non soddisfa la proprietà IR

Si procede in due passisi assegna, senza nessun costo, un insieme di rotteA = {a1, . . . ,aF} ai voli, seguendo lo standard FPFS

si permette lo scambio di rotte tra i voli. Ogni volo per cui af 6= q∗fpaga il prezzo p(q∗f ) per la sua rotta ottimale e riceve p(af ) comerimborso per la restituzione della rotta af , variando così il suoprofitto di

∆u(f ,e∗) = [C(f ,af )− C(f ,q∗f )]− [p(q∗f )− p(af )] =

= −C(f ,e∗f )− p(e∗f )

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 8 / 22

Page 46: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Scambio di rotte

Il Network Manager risolve il problema e calcola i prezzi della rotteP = {p(q∗1), . . . ,p(q∗F )}. Questo metodo non soddisfa la proprietà IR

Si procede in due passisi assegna, senza nessun costo, un insieme di rotteA = {a1, . . . ,aF} ai voli, seguendo lo standard FPFSsi permette lo scambio di rotte tra i voli. Ogni volo per cui af 6= q∗fpaga il prezzo p(q∗f ) per la sua rotta ottimale e riceve p(af ) comerimborso per la restituzione della rotta af , variando così il suoprofitto di

∆u(f ,e∗) = [C(f ,af )− C(f ,q∗f )]− [p(q∗f )− p(af )] =

= −C(f ,e∗f )− p(e∗f )

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 8 / 22

Page 47: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Algoritmo FPFS

L’assegnazione A = {a1, . . . ,aF} viene eseguita secondo l’algoritmoFirst Planned First Served

1 Per ogni settore s, gli slot verranno assegnati ai voli secondo illoro orario d’ingresso previsto in s, quindi ogni volo otterrà il primoslot utile non ancora assegnato.

2 Se un volo attraversa più settori si sceglie, tra tutti gli slot a luiassegnati, quello che causa il ritardo maggiore, cioè viene presala rotta più penalizzante, e si modificano gli altri suoi slot peradeguarsi a questa rotta.

3 Si decide un ordine di priorità per tutti i voli coinvolti.4 Seguendo l’ordine del passo 3, ad ogni volo viene assegnata

definitivamente la rotta scelta al passo 2; se uno slot dovesserisultare già occupato gli viene assegnato il migliore tra quellisuccessivi ed ancora disponibili, con conseguente modifica dellarotta e del ritardo.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 9 / 22

Page 48: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Algoritmo FPFS

L’assegnazione A = {a1, . . . ,aF} viene eseguita secondo l’algoritmoFirst Planned First Served

1 Per ogni settore s, gli slot verranno assegnati ai voli secondo illoro orario d’ingresso previsto in s, quindi ogni volo otterrà il primoslot utile non ancora assegnato.

2 Se un volo attraversa più settori si sceglie, tra tutti gli slot a luiassegnati, quello che causa il ritardo maggiore, cioè viene presala rotta più penalizzante, e si modificano gli altri suoi slot peradeguarsi a questa rotta.

3 Si decide un ordine di priorità per tutti i voli coinvolti.4 Seguendo l’ordine del passo 3, ad ogni volo viene assegnata

definitivamente la rotta scelta al passo 2; se uno slot dovesserisultare già occupato gli viene assegnato il migliore tra quellisuccessivi ed ancora disponibili, con conseguente modifica dellarotta e del ritardo.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 9 / 22

Page 49: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Algoritmo FPFS

L’assegnazione A = {a1, . . . ,aF} viene eseguita secondo l’algoritmoFirst Planned First Served

1 Per ogni settore s, gli slot verranno assegnati ai voli secondo illoro orario d’ingresso previsto in s, quindi ogni volo otterrà il primoslot utile non ancora assegnato.

2 Se un volo attraversa più settori si sceglie, tra tutti gli slot a luiassegnati, quello che causa il ritardo maggiore, cioè viene presala rotta più penalizzante, e si modificano gli altri suoi slot peradeguarsi a questa rotta.

3 Si decide un ordine di priorità per tutti i voli coinvolti.4 Seguendo l’ordine del passo 3, ad ogni volo viene assegnata

definitivamente la rotta scelta al passo 2; se uno slot dovesserisultare già occupato gli viene assegnato il migliore tra quellisuccessivi ed ancora disponibili, con conseguente modifica dellarotta e del ritardo.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 9 / 22

Page 50: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Algoritmo FPFS

L’assegnazione A = {a1, . . . ,aF} viene eseguita secondo l’algoritmoFirst Planned First Served

1 Per ogni settore s, gli slot verranno assegnati ai voli secondo illoro orario d’ingresso previsto in s, quindi ogni volo otterrà il primoslot utile non ancora assegnato.

2 Se un volo attraversa più settori si sceglie, tra tutti gli slot a luiassegnati, quello che causa il ritardo maggiore, cioè viene presala rotta più penalizzante, e si modificano gli altri suoi slot peradeguarsi a questa rotta.

3 Si decide un ordine di priorità per tutti i voli coinvolti.

4 Seguendo l’ordine del passo 3, ad ogni volo viene assegnatadefinitivamente la rotta scelta al passo 2; se uno slot dovesserisultare già occupato gli viene assegnato il migliore tra quellisuccessivi ed ancora disponibili, con conseguente modifica dellarotta e del ritardo.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 9 / 22

Page 51: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Algoritmo FPFS

L’assegnazione A = {a1, . . . ,aF} viene eseguita secondo l’algoritmoFirst Planned First Served

1 Per ogni settore s, gli slot verranno assegnati ai voli secondo illoro orario d’ingresso previsto in s, quindi ogni volo otterrà il primoslot utile non ancora assegnato.

2 Se un volo attraversa più settori si sceglie, tra tutti gli slot a luiassegnati, quello che causa il ritardo maggiore, cioè viene presala rotta più penalizzante, e si modificano gli altri suoi slot peradeguarsi a questa rotta.

3 Si decide un ordine di priorità per tutti i voli coinvolti.4 Seguendo l’ordine del passo 3, ad ogni volo viene assegnata

definitivamente la rotta scelta al passo 2; se uno slot dovesserisultare già occupato gli viene assegnato il migliore tra quellisuccessivi ed ancora disponibili, con conseguente modifica dellarotta e del ritardo.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 9 / 22

Page 52: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Problema con scambi

Possiamo riformulare il nostro problema includendo gli scambi.

ZIP−E = max∑f∈F

∑q∈Qf

V (f ,q)x(f ,q)

∑f∈F

∑q∈Qf :q3r

x(f ,q) ≤ 1 ∀r ∈ L

∑q∈Qf

x(f ,q) = 1 ∀f ∈ F

x(f ,q) ∈ {0,1} ∀f ∈ F ,q ∈ Qf

dove V (f ,q) = C(f ,af )− C(f ,q)

Il problema è NP-Hard

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 10 / 22

Page 53: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Problema con scambi

Possiamo riformulare il nostro problema includendo gli scambi.

ZIP−E = max∑f∈F

∑q∈Qf

V (f ,q)x(f ,q)

∑f∈F

∑q∈Qf :q3r

x(f ,q) ≤ 1 ∀r ∈ L

∑q∈Qf

x(f ,q) = 1 ∀f ∈ F

x(f ,q) ∈ {0,1} ∀f ∈ F ,q ∈ Qf

dove V (f ,q) = C(f ,af )− C(f ,q)

Il problema è NP-Hard

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 10 / 22

Page 54: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Problema con scambi

Possiamo riformulare il nostro problema includendo gli scambi.

ZIP−E = max∑f∈F

∑q∈Qf

V (f ,q)x(f ,q)

∑f∈F

∑q∈Qf :q3r

x(f ,q) ≤ 1 ∀r ∈ L

∑q∈Qf

x(f ,q) = 1 ∀f ∈ F

x(f ,q) ∈ {0,1} ∀f ∈ F ,q ∈ Qf

dove V (f ,q) = C(f ,af )− C(f ,q)

Il problema è NP-Hard

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 10 / 22

Page 55: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Problema con scambi

Possiamo riformulare il nostro problema includendo gli scambi.

ZIP−E = max∑f∈F

∑q∈Qf

V (f ,q)x(f ,q)

∑f∈F

∑q∈Qf :q3r

x(f ,q) ≤ 1 ∀r ∈ L

∑q∈Qf

x(f ,q) = 1 ∀f ∈ F

x(f ,q) ∈ {0,1} ∀f ∈ F ,q ∈ Qf

dove V (f ,q) = C(f ,af )− C(f ,q)

Il problema è NP-Hard

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 10 / 22

Page 56: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Algoritmo Distribuito

La risoluzione del problema può essere impraticabile perchè:

le compagnie aeree sono restie a rivelare i loro costiil peso computazionale ricade tutto sul Network Manager

Soluzione proposta

Calcolo dei prezziIl Network Managercalcola i prezzi sullabase della domanda.

=⇒⇐=

Ottimizzazione localeLe compagnie aereescelgono quale rottascambiare sulla basedei loro costi e deiprezzi

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 11 / 22

Page 57: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Algoritmo Distribuito

La risoluzione del problema può essere impraticabile perchè:le compagnie aeree sono restie a rivelare i loro costi

il peso computazionale ricade tutto sul Network Manager

Soluzione proposta

Calcolo dei prezziIl Network Managercalcola i prezzi sullabase della domanda.

=⇒⇐=

Ottimizzazione localeLe compagnie aereescelgono quale rottascambiare sulla basedei loro costi e deiprezzi

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 11 / 22

Page 58: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Algoritmo Distribuito

La risoluzione del problema può essere impraticabile perchè:le compagnie aeree sono restie a rivelare i loro costiil peso computazionale ricade tutto sul Network Manager

Soluzione proposta

Calcolo dei prezziIl Network Managercalcola i prezzi sullabase della domanda.

=⇒⇐=

Ottimizzazione localeLe compagnie aereescelgono quale rottascambiare sulla basedei loro costi e deiprezzi

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 11 / 22

Page 59: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Algoritmo Distribuito

La risoluzione del problema può essere impraticabile perchè:le compagnie aeree sono restie a rivelare i loro costiil peso computazionale ricade tutto sul Network Manager

Soluzione proposta

Calcolo dei prezziIl Network Managercalcola i prezzi sullabase della domanda.

=⇒⇐=

Ottimizzazione localeLe compagnie aereescelgono quale rottascambiare sulla basedei loro costi e deiprezzi

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 11 / 22

Page 60: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Algoritmo Distribuito

La risoluzione del problema può essere impraticabile perchè:le compagnie aeree sono restie a rivelare i loro costiil peso computazionale ricade tutto sul Network Manager

Soluzione proposta

Calcolo dei prezziIl Network Managercalcola i prezzi sullabase della domanda.

=⇒⇐=

Ottimizzazione localeLe compagnie aereescelgono quale rottascambiare sulla basedei loro costi e deiprezzi

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 11 / 22

Page 61: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Algoritmo Distribuito

La risoluzione del problema può essere impraticabile perchè:le compagnie aeree sono restie a rivelare i loro costiil peso computazionale ricade tutto sul Network Manager

Soluzione proposta

Calcolo dei prezziIl Network Managercalcola i prezzi sullabase della domanda.

=⇒

⇐=

Ottimizzazione localeLe compagnie aereescelgono quale rottascambiare sulla basedei loro costi e deiprezzi

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 11 / 22

Page 62: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Algoritmo Distribuito

La risoluzione del problema può essere impraticabile perchè:le compagnie aeree sono restie a rivelare i loro costiil peso computazionale ricade tutto sul Network Manager

Soluzione proposta

Calcolo dei prezziIl Network Managercalcola i prezzi sullabase della domanda.

=⇒⇐=

Ottimizzazione localeLe compagnie aereescelgono quale rottascambiare sulla basedei loro costi e deiprezzi

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 11 / 22

Page 63: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Formulazione Lagrangiana

Rilassando il vincolo sugli slot otteniamo la seguente formulazione

ZLRLP−E (λ) = max∑f∈F

∑q∈Qf

V (f ,q)x(f ,q) +

∑r∈L

λr (1−∑f∈F

∑q∈Qf :q3r

x(f ,q))

∑q∈Qf

x(f ,q) = 1 ∀f ∈ F

x(f ,q) ∈ {0,1} ∀f ∈ F ,q ∈ Qf

Dove i valori λr rappresentano i prezzi degli slot.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 12 / 22

Page 64: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Formulazione Lagrangiana

Rilassando il vincolo sugli slot otteniamo la seguente formulazione

ZLRLP−E (λ) = max∑f∈F

∑q∈Qf

V (f ,q)x(f ,q) +

∑r∈L

λr (1−∑f∈F

∑q∈Qf :q3r

x(f ,q))

∑q∈Qf

x(f ,q) = 1 ∀f ∈ F

x(f ,q) ∈ {0,1} ∀f ∈ F ,q ∈ Qf

Dove i valori λr rappresentano i prezzi degli slot.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 12 / 22

Page 65: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Formulazione Lagrangiana

Rilassando il vincolo sugli slot otteniamo la seguente formulazione

ZLRLP−E (λ) = max∑f∈F

∑q∈Qf

V (f ,q)x(f ,q) +

∑r∈L

λr (1−∑f∈F

∑q∈Qf :q3r

x(f ,q))

∑q∈Qf

x(f ,q) = 1 ∀f ∈ F

x(f ,q) ∈ {0,1} ∀f ∈ F ,q ∈ Qf

Dove i valori λr rappresentano i prezzi degli slot.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 12 / 22

Page 66: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Ricerca delle rotte

Le compagnie aeree devono risolvere per ogni volo il problema

ZLRLP−E (f , λ) = max∑q∈Qf

[V (f ,q)−∑r∈q

λr +∑r∈af

λr ]x(f ,q)

∑q∈Qf

x(f ,q) = 1

x(f ,q) ≥ 0 ∀q ∈ Qf

La soluzione è individuabile in tempo polinomiale, per ispezione, noti iprezzi λr

ZLRLP−E (f , λ) = maxq∈Qf

[V (f ,q)−∑r∈q

λr +∑r∈af

λr ]

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 13 / 22

Page 67: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Ricerca delle rotte

Le compagnie aeree devono risolvere per ogni volo il problema

ZLRLP−E (f , λ) = max∑q∈Qf

[V (f ,q)−∑r∈q

λr +∑r∈af

λr ]x(f ,q)

∑q∈Qf

x(f ,q) = 1

x(f ,q) ≥ 0 ∀q ∈ Qf

La soluzione è individuabile in tempo polinomiale, per ispezione, noti iprezzi λr

ZLRLP−E (f , λ) = maxq∈Qf

[V (f ,q)−∑r∈q

λr +∑r∈af

λr ]

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 13 / 22

Page 68: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Ricerca delle rotte

Le compagnie aeree devono risolvere per ogni volo il problema

ZLRLP−E (f , λ) = max∑q∈Qf

[V (f ,q)−∑r∈q

λr +∑r∈af

λr ]x(f ,q)

∑q∈Qf

x(f ,q) = 1

x(f ,q) ≥ 0 ∀q ∈ Qf

La soluzione è individuabile in tempo polinomiale, per ispezione, noti iprezzi λr

ZLRLP−E (f , λ) = maxq∈Qf

[V (f ,q)−∑r∈q

λr +∑r∈af

λr ]

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 13 / 22

Page 69: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Calcolo dei prezzi

Il Network Manager deve invece calcolare i prezzi λ.

Ciò avviene tramite un algoritmo subgradiente

λt+1r = max(0, λt

r − Φt · SGtr )

SGtr = 1−

∑f∈F ,q∈Qf :q3r

x t (f ,q)

Con il passo

Φt =θt (ZLRLP−E (λt )− Z ∗IP−E )∑

s∈S∑

r∈Ls(1−

∑f∈F

∑q∈Qf :q3r x t (f ,q))2

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 14 / 22

Page 70: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Calcolo dei prezzi

Il Network Manager deve invece calcolare i prezzi λ.

Ciò avviene tramite un algoritmo subgradiente

λt+1r = max(0, λt

r − Φt · SGtr )

SGtr = 1−

∑f∈F ,q∈Qf :q3r

x t (f ,q)

Con il passo

Φt =θt (ZLRLP−E (λt )− Z ∗IP−E )∑

s∈S∑

r∈Ls(1−

∑f∈F

∑q∈Qf :q3r x t (f ,q))2

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 14 / 22

Page 71: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Calcolo dei prezzi

Il Network Manager deve invece calcolare i prezzi λ.

Ciò avviene tramite un algoritmo subgradiente

λt+1r = max(0, λt

r − Φt · SGtr )

SGtr = 1−

∑f∈F ,q∈Qf :q3r

x t (f ,q)

Con il passo

Φt =θt (ZLRLP−E (λt )− Z ∗IP−E )∑

s∈S∑

r∈Ls(1−

∑f∈F

∑q∈Qf :q3r x t (f ,q))2

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 14 / 22

Page 72: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Stima dei limiti

Φt =θt (UBZ ∗ − ZLBIP−E )∑

s∈S∑

r∈Ls(1−

∑f∈F

∑q∈Qf :q3r x t (f ,q))2

Doveθt = 2 per t = 0 e successivamente dimezzatoUBZ ∗ è un limite superiore del valore ottimo degli scambi.Funzione di F e S e costante durante tutte le iterazioni.

UBZ ∗ = |S| · |F| · |Q|

ZLBIP−E è un limite inferiore del valore ottimo degli scambi cheviene perfezionato ad ogni iterazione.

Per ogni f ∈ F e q ∈ Qf , all’iterazione t il Network Manager puòcalcolare un limite inferiore LBt (f ,q) per lo scambio.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 15 / 22

Page 73: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Stima dei limiti

Φt =θt (UBZ ∗ − ZLBIP−E )∑

s∈S∑

r∈Ls(1−

∑f∈F

∑q∈Qf :q3r x t (f ,q))2

Doveθt = 2 per t = 0 e successivamente dimezzato

UBZ ∗ è un limite superiore del valore ottimo degli scambi.Funzione di F e S e costante durante tutte le iterazioni.

UBZ ∗ = |S| · |F| · |Q|

ZLBIP−E è un limite inferiore del valore ottimo degli scambi cheviene perfezionato ad ogni iterazione.

Per ogni f ∈ F e q ∈ Qf , all’iterazione t il Network Manager puòcalcolare un limite inferiore LBt (f ,q) per lo scambio.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 15 / 22

Page 74: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Stima dei limiti

Φt =θt (UBZ ∗ − ZLBIP−E )∑

s∈S∑

r∈Ls(1−

∑f∈F

∑q∈Qf :q3r x t (f ,q))2

Doveθt = 2 per t = 0 e successivamente dimezzatoUBZ ∗ è un limite superiore del valore ottimo degli scambi.Funzione di F e S e costante durante tutte le iterazioni.

UBZ ∗ = |S| · |F| · |Q|

ZLBIP−E è un limite inferiore del valore ottimo degli scambi cheviene perfezionato ad ogni iterazione.

Per ogni f ∈ F e q ∈ Qf , all’iterazione t il Network Manager puòcalcolare un limite inferiore LBt (f ,q) per lo scambio.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 15 / 22

Page 75: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Stima dei limiti

Φt =θt (UBZ ∗ − ZLBIP−E )∑

s∈S∑

r∈Ls(1−

∑f∈F

∑q∈Qf :q3r x t (f ,q))2

Doveθt = 2 per t = 0 e successivamente dimezzatoUBZ ∗ è un limite superiore del valore ottimo degli scambi.Funzione di F e S e costante durante tutte le iterazioni.

UBZ ∗ = |S| · |F| · |Q|

ZLBIP−E è un limite inferiore del valore ottimo degli scambi cheviene perfezionato ad ogni iterazione.

Per ogni f ∈ F e q ∈ Qf , all’iterazione t il Network Manager puòcalcolare un limite inferiore LBt (f ,q) per lo scambio.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 15 / 22

Page 76: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Stima dei limiti

Φt =θt (UBZ ∗ − ZLBIP−E )∑

s∈S∑

r∈Ls(1−

∑f∈F

∑q∈Qf :q3r x t (f ,q))2

Doveθt = 2 per t = 0 e successivamente dimezzatoUBZ ∗ è un limite superiore del valore ottimo degli scambi.Funzione di F e S e costante durante tutte le iterazioni.

UBZ ∗ = |S| · |F| · |Q|

ZLBIP−E è un limite inferiore del valore ottimo degli scambi cheviene perfezionato ad ogni iterazione.

Per ogni f ∈ F e q ∈ Qf , all’iterazione t il Network Manager puòcalcolare un limite inferiore LBt (f ,q) per lo scambio.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 15 / 22

Page 77: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Stima dei limiti

Φt =θt (UBZ ∗ − ZLBIP−E )∑

s∈S∑

r∈Ls(1−

∑f∈F

∑q∈Qf :q3r x t (f ,q))2

Doveθt = 2 per t = 0 e successivamente dimezzatoUBZ ∗ è un limite superiore del valore ottimo degli scambi.Funzione di F e S e costante durante tutte le iterazioni.

UBZ ∗ = |S| · |F| · |Q|

ZLBIP−E è un limite inferiore del valore ottimo degli scambi cheviene perfezionato ad ogni iterazione.

Per ogni f ∈ F e q ∈ Qf , all’iterazione t il Network Manager puòcalcolare un limite inferiore LBt (f ,q) per lo scambio.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 15 / 22

Page 78: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Calcolo di LBt

Per fare ciò definiamo:

p(q,af , λt ) =

{ ∑r∈q λ

tr −

∑r∈af

λtr se x t (f ,q) = 1

−∞ altrimenti

come l’ammontare che il volo f accetta di pagare per la rotta q aiprezzi fissati all’iterazione t;

LBt (f ,q) = max{p(q,af , λt ),LBt−1(f ,q), max

q∈Q̂f (q){LBt (f ,q)}}

dove Q̂f (q) è l’insieme delle rotte che inducono al volo f unritardo non inferiore a quello causato da q.

inizializzato con

LB0(f ,q) =

{0 se q ∈ Q̂(af ) ∪ {af}−∞ altrimenti

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 16 / 22

Page 79: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Calcolo di LBt

Per fare ciò definiamo:

p(q,af , λt ) =

{ ∑r∈q λ

tr −

∑r∈af

λtr se x t (f ,q) = 1

−∞ altrimenti

come l’ammontare che il volo f accetta di pagare per la rotta q aiprezzi fissati all’iterazione t;

LBt (f ,q) = max{p(q,af , λt ),LBt−1(f ,q), max

q∈Q̂f (q){LBt (f ,q)}}

dove Q̂f (q) è l’insieme delle rotte che inducono al volo f unritardo non inferiore a quello causato da q.

inizializzato con

LB0(f ,q) =

{0 se q ∈ Q̂(af ) ∪ {af}−∞ altrimenti

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 16 / 22

Page 80: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Calcolo di LBt

Per fare ciò definiamo:

p(q,af , λt ) =

{ ∑r∈q λ

tr −

∑r∈af

λtr se x t (f ,q) = 1

−∞ altrimenti

come l’ammontare che il volo f accetta di pagare per la rotta q aiprezzi fissati all’iterazione t;

LBt (f ,q) = max{p(q,af , λt ),LBt−1(f ,q), max

q∈Q̂f (q){LBt (f ,q)}}

dove Q̂f (q) è l’insieme delle rotte che inducono al volo f unritardo non inferiore a quello causato da q.

inizializzato con

LB0(f ,q) =

{0 se q ∈ Q̂(af ) ∪ {af}−∞ altrimenti

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 16 / 22

Page 81: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Calcolo di LBt

Per fare ciò definiamo:

p(q,af , λt ) =

{ ∑r∈q λ

tr −

∑r∈af

λtr se x t (f ,q) = 1

−∞ altrimenti

come l’ammontare che il volo f accetta di pagare per la rotta q aiprezzi fissati all’iterazione t;

LBt (f ,q) = max{p(q,af , λt ),LBt−1(f ,q), max

q∈Q̂f (q){LBt (f ,q)}}

dove Q̂f (q) è l’insieme delle rotte che inducono al volo f unritardo non inferiore a quello causato da q.

inizializzato con

LB0(f ,q) =

{0 se q ∈ Q̂(af ) ∪ {af}−∞ altrimenti

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 16 / 22

Page 82: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Calcolo di LBt

Per fare ciò definiamo:

p(q,af , λt ) =

{ ∑r∈q λ

tr −

∑r∈af

λtr se x t (f ,q) = 1

−∞ altrimenti

come l’ammontare che il volo f accetta di pagare per la rotta q aiprezzi fissati all’iterazione t;

LBt (f ,q) = max{p(q,af , λt ),LBt−1(f ,q), max

q∈Q̂f (q){LBt (f ,q)}}

dove Q̂f (q) è l’insieme delle rotte che inducono al volo f unritardo non inferiore a quello causato da q. inizializzato con

LB0(f ,q) =

{0 se q ∈ Q̂(af ) ∪ {af}−∞ altrimenti

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 16 / 22

Page 83: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Calcolo di ZLBIP−E

Il Network Manager deve quindi risolvere il seguente problema

ZLBtIP−E = max

∑f∈F

∑q∈Qf

LBt (f ,q)x(f ,q)

∑f∈F

∑q∈Qf :q3r

x(f ,q) ≤ 1 ∀r ∈ L

∑q∈Qf

x(f ,q) = 1 ∀f ∈ F

x(f ,q) ∈ {0,1} ∀f ∈ F ,q ∈ Qf

Il problema è ancora NP-Hardma con alcune caratteristiche che ne facilitano la risoluzione.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 17 / 22

Page 84: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Calcolo di ZLBIP−E

Il Network Manager deve quindi risolvere il seguente problema

ZLBtIP−E = max

∑f∈F

∑q∈Qf

LBt (f ,q)x(f ,q)

∑f∈F

∑q∈Qf :q3r

x(f ,q) ≤ 1 ∀r ∈ L

∑q∈Qf

x(f ,q) = 1 ∀f ∈ F

x(f ,q) ∈ {0,1} ∀f ∈ F ,q ∈ Qf

Il problema è ancora NP-Hardma con alcune caratteristiche che ne facilitano la risoluzione.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 17 / 22

Page 85: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Calcolo di ZLBIP−E

Il Network Manager deve quindi risolvere il seguente problema

ZLBtIP−E = max

∑f∈F

∑q∈Qf

LBt (f ,q)x(f ,q)

∑f∈F

∑q∈Qf :q3r

x(f ,q) ≤ 1 ∀r ∈ L

∑q∈Qf

x(f ,q) = 1 ∀f ∈ F

x(f ,q) ∈ {0,1} ∀f ∈ F ,q ∈ Qf

Il problema è ancora NP-Hardma con alcune caratteristiche che ne facilitano la risoluzione.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 17 / 22

Page 86: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Calcolo di ZLBIP−E

Il Network Manager deve quindi risolvere il seguente problema

ZLBtIP−E = max

∑f∈F

∑q∈Qf

LBt (f ,q)x(f ,q)

∑f∈F

∑q∈Qf :q3r

x(f ,q) ≤ 1 ∀r ∈ L

∑q∈Qf

x(f ,q) = 1 ∀f ∈ F

x(f ,q) ∈ {0,1} ∀f ∈ F ,q ∈ Qf

Il problema è ancora NP-Hard

ma con alcune caratteristiche che ne facilitano la risoluzione.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 17 / 22

Page 87: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Calcolo di ZLBIP−E

Il Network Manager deve quindi risolvere il seguente problema

ZLBtIP−E = max

∑f∈F

∑q∈Qf

LBt (f ,q)x(f ,q)

∑f∈F

∑q∈Qf :q3r

x(f ,q) ≤ 1 ∀r ∈ L

∑q∈Qf

x(f ,q) = 1 ∀f ∈ F

x(f ,q) ∈ {0,1} ∀f ∈ F ,q ∈ Qf

Il problema è ancora NP-Hardma con alcune caratteristiche che ne facilitano la risoluzione.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 17 / 22

Page 88: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Implementazione

Xpress-Mosel: risoluzione dei problemi di ottimizzazione

Apposite librerie per la trasmissione dei dati

Java: organizzazione dei dati e controllo dell’esecuzione

Classe SlotClasse Sector

Lista ordinata di slot

Classe Route

Tabella con settori attraversati⇒ slot occupati

Classe Flight

Tabella con settori attraversati⇒ orario d’ingressoLista ordinata di rotte

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 18 / 22

Page 89: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Implementazione

Xpress-Mosel: risoluzione dei problemi di ottimizzazioneApposite librerie per la trasmissione dei dati

Java: organizzazione dei dati e controllo dell’esecuzione

Classe SlotClasse Sector

Lista ordinata di slot

Classe Route

Tabella con settori attraversati⇒ slot occupati

Classe Flight

Tabella con settori attraversati⇒ orario d’ingressoLista ordinata di rotte

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 18 / 22

Page 90: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Implementazione

Xpress-Mosel: risoluzione dei problemi di ottimizzazioneApposite librerie per la trasmissione dei dati

Java: organizzazione dei dati e controllo dell’esecuzione

Classe SlotClasse Sector

Lista ordinata di slot

Classe Route

Tabella con settori attraversati⇒ slot occupati

Classe Flight

Tabella con settori attraversati⇒ orario d’ingressoLista ordinata di rotte

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 18 / 22

Page 91: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Implementazione

Xpress-Mosel: risoluzione dei problemi di ottimizzazioneApposite librerie per la trasmissione dei dati

Java: organizzazione dei dati e controllo dell’esecuzione

Classe Slot

Classe Sector

Lista ordinata di slot

Classe Route

Tabella con settori attraversati⇒ slot occupati

Classe Flight

Tabella con settori attraversati⇒ orario d’ingressoLista ordinata di rotte

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 18 / 22

Page 92: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Implementazione

Xpress-Mosel: risoluzione dei problemi di ottimizzazioneApposite librerie per la trasmissione dei dati

Java: organizzazione dei dati e controllo dell’esecuzione

Classe SlotClasse Sector

Lista ordinata di slot

Classe Route

Tabella con settori attraversati⇒ slot occupati

Classe Flight

Tabella con settori attraversati⇒ orario d’ingressoLista ordinata di rotte

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 18 / 22

Page 93: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Implementazione

Xpress-Mosel: risoluzione dei problemi di ottimizzazioneApposite librerie per la trasmissione dei dati

Java: organizzazione dei dati e controllo dell’esecuzione

Classe SlotClasse Sector

Lista ordinata di slotClasse Route

Tabella con settori attraversati⇒ slot occupati

Classe Flight

Tabella con settori attraversati⇒ orario d’ingressoLista ordinata di rotte

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 18 / 22

Page 94: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Implementazione

Xpress-Mosel: risoluzione dei problemi di ottimizzazioneApposite librerie per la trasmissione dei dati

Java: organizzazione dei dati e controllo dell’esecuzione

Classe SlotClasse Sector

Lista ordinata di slotClasse Route

Tabella con settori attraversati⇒ slot occupatiClasse Flight

Tabella con settori attraversati⇒ orario d’ingressoLista ordinata di rotte

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 18 / 22

Page 95: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Preparazione dei dati

Lettura dei dati da file di testoGenerazione dei settori

Generazione di slot

Generazione dei voliGenerazione delle rotte

Ogni rotta è usabile soltanto da un voloNiente reroutingUna rotta sempre disponibile per garantire una soluzione

Compilazione delle matriciInizializzazione delle librerie

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 19 / 22

Page 96: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Preparazione dei dati

Lettura dei dati da file di testo

Generazione dei settori

Generazione di slot

Generazione dei voliGenerazione delle rotte

Ogni rotta è usabile soltanto da un voloNiente reroutingUna rotta sempre disponibile per garantire una soluzione

Compilazione delle matriciInizializzazione delle librerie

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 19 / 22

Page 97: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Preparazione dei dati

Lettura dei dati da file di testoGenerazione dei settori

Generazione di slot

Generazione dei voliGenerazione delle rotte

Ogni rotta è usabile soltanto da un voloNiente reroutingUna rotta sempre disponibile per garantire una soluzione

Compilazione delle matriciInizializzazione delle librerie

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 19 / 22

Page 98: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Preparazione dei dati

Lettura dei dati da file di testoGenerazione dei settori

Generazione di slot

Generazione dei voli

Generazione delle rotte

Ogni rotta è usabile soltanto da un voloNiente reroutingUna rotta sempre disponibile per garantire una soluzione

Compilazione delle matriciInizializzazione delle librerie

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 19 / 22

Page 99: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Preparazione dei dati

Lettura dei dati da file di testoGenerazione dei settori

Generazione di slot

Generazione dei voliGenerazione delle rotte

Ogni rotta è usabile soltanto da un voloNiente reroutingUna rotta sempre disponibile per garantire una soluzione

Compilazione delle matriciInizializzazione delle librerie

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 19 / 22

Page 100: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Preparazione dei dati

Lettura dei dati da file di testoGenerazione dei settori

Generazione di slot

Generazione dei voliGenerazione delle rotte

Ogni rotta è usabile soltanto da un voloNiente reroutingUna rotta sempre disponibile per garantire una soluzione

Compilazione delle matriciInizializzazione delle librerie

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 19 / 22

Page 101: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Preparazione dei dati

Lettura dei dati da file di testoGenerazione dei settori

Generazione di slot

Generazione dei voliGenerazione delle rotte

Ogni rotta è usabile soltanto da un voloNiente reroutingUna rotta sempre disponibile per garantire una soluzione

Compilazione delle matrici

Inizializzazione delle librerie

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 19 / 22

Page 102: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Preparazione dei dati

Lettura dei dati da file di testoGenerazione dei settori

Generazione di slot

Generazione dei voliGenerazione delle rotte

Ogni rotta è usabile soltanto da un voloNiente reroutingUna rotta sempre disponibile per garantire una soluzione

Compilazione delle matriciInizializzazione delle librerie

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 19 / 22

Page 103: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Esecuzione dell’algoritmo

Calcolo dei prezziIl Network Managercalcola il passo Φt e iprezzi degli slot λt

r e licomunica allecompagnie aeree.

=⇒

Ricerca delle rotteLe compagnie aereescelgono la rottamigliore per ogni volosulla base dei prezziappena calcolati

⇑ ⇓

Controllo deiparametriVengono valutati ilnumero di iterazioni eΦt per decidere seterminarel’esecuzione.

⇐=

Verifica dellasoluzioneSi controlla che lasoluzione trovata siaaccettabile e miglioredell’attuale.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 20 / 22

Page 104: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Esecuzione dell’algoritmo

Calcolo dei prezziIl Network Managercalcola il passo Φt e iprezzi degli slot λt

r e licomunica allecompagnie aeree.

=⇒

Ricerca delle rotteLe compagnie aereescelgono la rottamigliore per ogni volosulla base dei prezziappena calcolati

⇑ ⇓

Controllo deiparametriVengono valutati ilnumero di iterazioni eΦt per decidere seterminarel’esecuzione.

⇐=

Verifica dellasoluzioneSi controlla che lasoluzione trovata siaaccettabile e miglioredell’attuale.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 20 / 22

Page 105: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Esecuzione dell’algoritmo

Calcolo dei prezziIl Network Managercalcola il passo Φt e iprezzi degli slot λt

r e licomunica allecompagnie aeree.

=⇒

Ricerca delle rotteLe compagnie aereescelgono la rottamigliore per ogni volosulla base dei prezziappena calcolati

⇑ ⇓

Controllo deiparametriVengono valutati ilnumero di iterazioni eΦt per decidere seterminarel’esecuzione.

⇐=

Verifica dellasoluzioneSi controlla che lasoluzione trovata siaaccettabile e miglioredell’attuale.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 20 / 22

Page 106: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Esecuzione dell’algoritmo

Calcolo dei prezziIl Network Managercalcola il passo Φt e iprezzi degli slot λt

r e licomunica allecompagnie aeree.

=⇒

Ricerca delle rotteLe compagnie aereescelgono la rottamigliore per ogni volosulla base dei prezziappena calcolati

Controllo deiparametriVengono valutati ilnumero di iterazioni eΦt per decidere seterminarel’esecuzione.

⇐=

Verifica dellasoluzioneSi controlla che lasoluzione trovata siaaccettabile e miglioredell’attuale.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 20 / 22

Page 107: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Esecuzione dell’algoritmo

Calcolo dei prezziIl Network Managercalcola il passo Φt e iprezzi degli slot λt

r e licomunica allecompagnie aeree.

=⇒

Ricerca delle rotteLe compagnie aereescelgono la rottamigliore per ogni volosulla base dei prezziappena calcolati

Controllo deiparametriVengono valutati ilnumero di iterazioni eΦt per decidere seterminarel’esecuzione.

⇐=

Verifica dellasoluzioneSi controlla che lasoluzione trovata siaaccettabile e miglioredell’attuale.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 20 / 22

Page 108: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Esecuzione dell’algoritmo

Calcolo dei prezziIl Network Managercalcola il passo Φt e iprezzi degli slot λt

r e licomunica allecompagnie aeree.

=⇒

Ricerca delle rotteLe compagnie aereescelgono la rottamigliore per ogni volosulla base dei prezziappena calcolati

⇑ ⇓

Controllo deiparametriVengono valutati ilnumero di iterazioni eΦt per decidere seterminarel’esecuzione.

⇐=

Verifica dellasoluzioneSi controlla che lasoluzione trovata siaaccettabile e miglioredell’attuale.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 20 / 22

Page 109: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Valutazione dei risultati

Si confronta il valore ottenuto con quello ottimo.

Tabella: Regolamentazione di 2h 20m su 4 settori e 27 voli

Capacità Intervallo tra le rotteoraria 15 18 20 22

19% 4.3% 0% 3.5%4 18 1 1 1

31.2% 26.5% 0% 0%5 2 9 1 1

90.9% 7.4% 0% 29.3%6 56 1 1 1

0% 13.4% 3.8% 1.1%7 1 31 2 1

19116 16416 14904 14364UBZ ∗ iniziale

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 21 / 22

Page 110: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Valutazione dei risultati

Si confronta il valore ottenuto con quello ottimo.

Tabella: Regolamentazione di 2h 20m su 4 settori e 27 voli

Capacità Intervallo tra le rotteoraria 15 18 20 22

19% 4.3% 0% 3.5%4 18 1 1 1

31.2% 26.5% 0% 0%5 2 9 1 1

90.9% 7.4% 0% 29.3%6 56 1 1 1

0% 13.4% 3.8% 1.1%7 1 31 2 1

19116 16416 14904 14364UBZ ∗ iniziale

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 21 / 22

Page 111: Implementazione di un algoritmo distribuito per l'assegnazione del traffico aereo slides

Ringraziamenti

Grazie per l’attenzione.

Matteo Buriola (UNITS) Algoritmo distribuito per traffico aereo 10 Marzo 2016 22 / 22