SlideShare une entreprise Scribd logo
1  sur  38
UNIVERSITÀ DEGLI STUDI DI TRIESTE
                    Facoltà di Scienze Matematiche, Fisiche e Naturali
             c.d.l. magistrale in informatica - curr. ingegneria informatica



       Approximate algorithms
                 for the
Network Pricing Problem with Congestion
Laureanda:                                                                     Relatore:
Desirée Rigonat                                           Chiar.mo Prof. Lorenzo Castelli


                             Anno Accademico 2011 - 2012
                                   Sessione Estiva
Parte del presente lavoro di tesi è stata sviluppata presso il gruppo di
Graphes et Optimisation Mathematique (G.O.M.) dell’Université Libre
de Bruxelles sotto la supervisione della Prof.ssa Martine Labbé.
Il lavoro è stato poi completato presso il laboratorio di Ricerca
Operativa dell’Università degli Studi di Trieste sotto la supervisione del
Professor Lorenzo Castelli.
Indice
    Network Pricing Problem;

    Network Pricing Problem con Congestione;

    Algoritmi sviluppati: One Step algorithm;

    Algoritmi sviluppati: Two Steps algorithm;

    Implementazione;

    Test numerici e risultati.
Network Pricing Problem




                               Rete Stradale

Leader
                                       Utenti (followers)
•possiede tratti della rete
•può fissare delle tariffe              •viaggiano sulla rete
•vuole ricavare il massimo profitto     •vogliono spendere il meno possibile
Network Pricing Problem

                   Per massimizzare il profitto:
                   Leader impone tariffe di pedaggio sui suoi archi in base alla
                   distribuzione degli utenti



              Per minimizzare il costo del viaggio:
Follower scelgono il proprio percorso in base ai costi degli archi (e
                                  quindi anche in base alle tariffe)
Network Pricing Problem




                 Interdipendenza e concorrenza
•I due agenti hanno interessi contrapposti;
•Se le tariffe sono troppo alte, gli utenti sceglieranno un percorso alternativo
 più economico;
•Se le tariffe sono troppo basse, il leader va out of business.
Network Pricing Problem




       Rete stradale: grafo pesato

          Leader & followers:
      problema di ottimizzazione bilivello
Network Pricing Problem
                                  Grafo:
•Insieme di nodi: N
•Insieme di archi tariffati: A
•Insieme di archi non tariffati: B
•Costo degli archi A: costo fisso (c) + tariffa (t)
•Costo degli archi B: costo fisso (d)
                               Utenti:
•Numero di utenti (unità di flusso): x
•Coppie ordinate di nodi Origine/Destinazione
•Unità di flusso x per coppia O/D: domanda (d)
             coppia O/D + domanda d = Commodity (insieme K)
Network Pricing Problem


         subject to:

                       Shortest Path Problem
Network Pricing Problem

                Ulteriori assunzioni:

•Esistenza di un Toll-Free Path
  per ogni commodity esiste sempre sulla rete almeno
  un percorso composto di soli archi non tariffati;

              •Politica favorevole al leader
                 In presenza di più percorsi di pari costo, un utente
                 sceglierà quello più vantaggioso per il leader.
Network Pricing Problem

                                     Funzione Obiettivo del
                                       leader: bilineare


           NPP è un problema NP-Hard
    Risoluzione esatta tramite Branch and Bound: possibile ma
    diventa molto presto ingestibile;

    Algoritmi euristici basati su scomposizione: più efficienti ma
    non è sicuro che trovino la soluzione ottima.
Network Pricing Problem;

Network Pricing Problem con Congestione;

Algoritmi sviluppati: One Step algorithm;

Algoritmi sviluppati: Two Steps algorithm;

Implementazione;

Test numerici e risultati.
Congested Network Pricing Problem




Congestione
Condizione che si verifica quando un canale di trasporto viene utilizzato al di sopra
della sua capacità;
•La qualità del servizio diminuisce;
•Senza adeguati provvedimenti si arriva ad un blocco totale del traffico.
Congested Network Pricing Problem

             # Utenti                               Costo del
            sulla rete                               viaggio

Interdipendenza tra il flusso su un arco ed il suo costo.
Se un utente vuole viaggiare su un dato arco, il costo di quell’arco aumenta.
Se esiste un arco alternativo al precedente e più economico, l’utente si sposta
sul nuovo arco, il cui costo aumenterà di conseguenza.
Ogni utente sceglierà sempre l’alternativa di costo inferiore.
Congested Network Pricing Problem
                                  Equilibrio
        Deterministic User Equilibrium (I principio di Wardrop):
“per ciascuna coppia O/D il costo di equilibrio dei percorsi utilizzati è uguale,
  e risulta minore o uguale al costo di equilibrio di ogni percorso non usato”



      ...cioè all’equilibrio nessun utente può più ridurre il proprio
            costo di viaggio modificando la scelta del percorso.
                    Sotto opportune condizioni è UNICO.
Congested Network Pricing Problem
                             Matematicamente...
        NPP                                          CNPP

                                                costo fisso di un arco
     costo fisso di un arco                   funzione continua del
      costante: c, d                                flusso:   C(x)


 Problema dei follower: lineare              Problema dei follower: convesso
Shortest Path Problem                           Traffic Assignment
                                                      Problem
Congested Network Pricing Problem


       subject to:

                     Traffic Assignment Problem
Congested Network Pricing Problem

               E’ un problema (almeno) NP-Hard

           Un solo caso di studio documentato in letteratura

           La complessità dipende dalla funzione di costo C(x)



... oltre alle problematiche già discusse per NPP.
Congested Network Pricing Problem

                       Funzione di costo C(x)

  Costante:                                                      (CNPP = NPP)

  Lineare:                                          (ris. in tempo polinomiale)

  Generica:
   q = capacità dell’arco, α,β = parametri

                                    (ris. in tempo polinomiale se approssimata)
Network Pricing Problem;

Network Pricing Problem con Congestione;

Algoritmi sviluppati: One Step algorithm;

Algoritmi sviluppati: Two Steps algorithm;

Implementazione;

Test numerici e risultati.
CNPP: Two Steps Algorithm

                    Idea di fondo:
  Scomposizione del problema: risolvere sequenzialmente il
             problema del leader e dei follower

                          In pratica:
Fissate t, risoluzione problema follower (traffic assignment) per
                            ottenere x
                                +
      Fissate x, Risoluzione problema leader per ottenere t
CNPP: Two Steps Algorithm
        Inner Loop:
 Risoluzione problema
        dei follower
    Successione convergente
   di approssimazioni lineari
  (shortest path) con t fissate
                                     Test di arresto:
                                    Δ val. F.O. del leader < ε

         Outer Loop:
  Risoluzione problema
          del leader
         Soluzione CNPP
  (una volta fissate x, diventa un
        problema lineare)
CNPP: Two Steps Algorithm
                                      Algoritmo di Frank-Wolfe (Conditional
                                                    Gradient)
Soluzione approssimazione
lineare Traffic Assignment:
          Shortest Path
   configurazione di flusso Lin. x
                                              Test di arresto:
                                                     Equilibrio:
                                             val. F.O. prob. convesso -
                                             val. F.O. appros. lin < ε

  Combinazione convessa
    con x delle iteraz. precedenti
  New x = Old x + μ (Lin.x - Old x)
CNPP: One Step Algorithm

                  Idea di fondo:
             Trovare x e t allo stesso tempo
 Successione di approssimazioni lineari dell’intero CNPP

                      In pratica:
     Conditional Gradient (Algoritmo di Frank-Wolfe)
                             +
calcolo della variazione delle tariffe t per quell’iterazione
CNPP: One Step Algorithm
Soluzione approssimazione
     lineare del CNPP:
   configurazione di flusso Lin. x
      variazione di tariffe ∆t

                                         Test di arresto:
                                       Equilibrio per il problema
                                              del follower?
   Combinazione convessa
     con x delle iteraz. precedenti
   New x = Old x + μ (Lin.x - Old x)

    Aggiornamento tariffe
        New t = Old t + ∆t
Network Pricing Problem;

Network Pricing Problem con Congestione;

Algoritmi sviluppati: One Step algorithm;

Algoritmi sviluppati: Two Steps algorithm;

Implementazione;

Test numerici e risultati.
Implementazione


   Programma scritto in linguaggio C;
   Utilizzo suite di ottimizzazione Xpress (problemi di
   ottimizzazione in linguaggio Mosel);
   Interfacciamento tra programma C e optimizer tramite
   API per embedded Mosel.
Implementazione
File di dati XML




  •Formato ad-hoc: dati riutilizzabili per progetti futuri
  •Descrive un’istanza (C)NPP completa
File di dati XML
                          <graph>
<?xml version="1.0"       !
    encoding="UTF-8"?>    ! ! <node>
<npp>                     ! ! ! <id>n0</id>
! <gdata>                 ! ! </node>                       !   <commodities>
! ! <nodes>6</nodes>      [....]                            !   ! <user>
! ! <tarcs>4</tarcs>
                                                            !   ! ! <id>k0</id>
! ! <farcs>6</farcs>      ! ! <arc>                         !   ! ! <src>n0</src>
! ! <kcom>1</kcom>        ! ! ! <id>a0</id>                 !   ! ! <dst>n5</dst>
! </gdata>                ! ! ! <src>n0</src>               !   ! ! <dem>11</dem>
!                         ! ! ! <dst>n1</dst>               !   ! </user>
   <graph> [....]         ! ! ! <cost>1</cost>              !   </commodities>
   </graph>               ! ! ! <capacity>5</capacity>
                          ! ! ! <directed>true</directed>
   <commodities> [....]   ! ! ! <tariffed>true</tariffed>
   </commodities>         ! ! </arc>
! ! !                     [....]
</npp>                    ! </graph>




     <gdata>                         <graph>                   <commodities>
 Dimensioni del grafo         Descrizione nodi e archi      Descrizione commodity
Network Pricing Problem;

Network Pricing Problem con Congestione;

Algoritmi sviluppati: One Step algorithm;

Algoritmi sviluppati: Two Steps algorithm;

Implementazione;

Test numerici e risultati.
Test e Risultati
tempo di esecuzione
Test e Risultati
tempo di esecuzione
Test e Risultati
soluzioni simili (diff. < 15%)




       Percentuale più alta sulle reti più semplici
Test e Risultati
  soluzioni diverse (diff. > 15%)




    One Step dà risultati migliori sulle reti con meno archi tariffati;
viceversa sulle reti con più archi tariffati Two Steps si comporta meglio.
Test e Risultati
variazione precisione del criterio d’arresto
Sviluppi futuri


Migliorare Two Steps con algoritmo più veloce per risoluzione
problema dei follower
Unire le due strategie: algoritmo che risolva rapidamente problema
dei follower e che vari tariffe in modo adattivo
Grazie per l’attenzione

Contenu connexe

Similaire à Approximate Algorithms for the Network Pricing Problem with Congestion - MS Thesis in Computer Science & Engineering

Tecniche di fattorizzazione applicate ai recommender systems
Tecniche di fattorizzazione applicate ai recommender systemsTecniche di fattorizzazione applicate ai recommender systems
Tecniche di fattorizzazione applicate ai recommender systemsGiuseppe Ricci
 
Presentazione Aggiornamento Agile Club Sviluppatori Puglia
Presentazione Aggiornamento Agile Club Sviluppatori PugliaPresentazione Aggiornamento Agile Club Sviluppatori Puglia
Presentazione Aggiornamento Agile Club Sviluppatori PugliaGiuseppe Ricci
 
8 Routing
8 Routing8 Routing
8 Routingacapone
 
Extended Summary of Optimized Design of a Human Intranet Network
Extended Summary of Optimized Design of a Human Intranet NetworkExtended Summary of Optimized Design of a Human Intranet Network
Extended Summary of Optimized Design of a Human Intranet NetworkOlesiaRonzon
 
Deep Learning on Event-Based Cameras
Deep Learning on Event-Based CamerasDeep Learning on Event-Based Cameras
Deep Learning on Event-Based CamerasMarco Cannici
 
4 Livello Ip Parte3 Bw
4 Livello Ip Parte3 Bw4 Livello Ip Parte3 Bw
4 Livello Ip Parte3 BwMajong DevJfu
 
Studio comparativo tra gli algoritmi di Dijkstra e Bellman-Ford
Studio comparativo tra gli algoritmi di Dijkstra e Bellman-FordStudio comparativo tra gli algoritmi di Dijkstra e Bellman-Ford
Studio comparativo tra gli algoritmi di Dijkstra e Bellman-FordFrancesco Ciclosi
 
Java Symbolic Regression - Machine Learining
Java Symbolic Regression - Machine LeariningJava Symbolic Regression - Machine Learining
Java Symbolic Regression - Machine LeariningAndrea Ciccotta
 
Syntactical errors detection 1
Syntactical errors detection 1Syntactical errors detection 1
Syntactical errors detection 1LucaPostiglione2
 
Extended summary of "Solving the length constrained K-drones rural postman pr...
Extended summary of "Solving the length constrained K-drones rural postman pr...Extended summary of "Solving the length constrained K-drones rural postman pr...
Extended summary of "Solving the length constrained K-drones rural postman pr...Borutbrecelj
 
Support Vector Machines: concetti ed esempi
Support Vector Machines: concetti ed esempiSupport Vector Machines: concetti ed esempi
Support Vector Machines: concetti ed esempiGioele Ciaparrone
 
Qualità del servizio in una uo di bioimmagini digitale
Qualità del servizio in una uo di bioimmagini digitaleQualità del servizio in una uo di bioimmagini digitale
Qualità del servizio in una uo di bioimmagini digitaleGiuseppe Walter Antonucci
 
Un metodo di progettazione di reti locali con esigenze di qualità del servizio
Un metodo di progettazione di reti locali con esigenze di qualità del servizioUn metodo di progettazione di reti locali con esigenze di qualità del servizio
Un metodo di progettazione di reti locali con esigenze di qualità del servizioClaudio Bortone
 
Presentazione Sviluppo e confronto di tecniche di stima della traiettoria di ...
Presentazione Sviluppo e confronto di tecniche di stima della traiettoria di ...Presentazione Sviluppo e confronto di tecniche di stima della traiettoria di ...
Presentazione Sviluppo e confronto di tecniche di stima della traiettoria di ...Andrea Bidinost
 
Classificazione pazienti con la SLA tramite SVM integration
Classificazione pazienti con la SLA tramite SVM integrationClassificazione pazienti con la SLA tramite SVM integration
Classificazione pazienti con la SLA tramite SVM integrationGiuseppe Luciano
 
Network Anomaly Detection col Conformal Prediction
Network Anomaly Detection col Conformal PredictionNetwork Anomaly Detection col Conformal Prediction
Network Anomaly Detection col Conformal PredictionGiuseppe Luciano
 
Definizione e comparazione dei modelli di classificazione con Scikit-Learn
Definizione e comparazione dei modelli di classificazione con Scikit-LearnDefinizione e comparazione dei modelli di classificazione con Scikit-Learn
Definizione e comparazione dei modelli di classificazione con Scikit-LearnAlina Gnerre
 

Similaire à Approximate Algorithms for the Network Pricing Problem with Congestion - MS Thesis in Computer Science & Engineering (20)

Tecniche di fattorizzazione applicate ai recommender systems
Tecniche di fattorizzazione applicate ai recommender systemsTecniche di fattorizzazione applicate ai recommender systems
Tecniche di fattorizzazione applicate ai recommender systems
 
Presentazione Aggiornamento Agile Club Sviluppatori Puglia
Presentazione Aggiornamento Agile Club Sviluppatori PugliaPresentazione Aggiornamento Agile Club Sviluppatori Puglia
Presentazione Aggiornamento Agile Club Sviluppatori Puglia
 
8 Routing
8 Routing8 Routing
8 Routing
 
Extended Summary of Optimized Design of a Human Intranet Network
Extended Summary of Optimized Design of a Human Intranet NetworkExtended Summary of Optimized Design of a Human Intranet Network
Extended Summary of Optimized Design of a Human Intranet Network
 
Deep Learning on Event-Based Cameras
Deep Learning on Event-Based CamerasDeep Learning on Event-Based Cameras
Deep Learning on Event-Based Cameras
 
4 Livello Ip Parte3 Bw
4 Livello Ip Parte3 Bw4 Livello Ip Parte3 Bw
4 Livello Ip Parte3 Bw
 
Studio comparativo tra gli algoritmi di Dijkstra e Bellman-Ford
Studio comparativo tra gli algoritmi di Dijkstra e Bellman-FordStudio comparativo tra gli algoritmi di Dijkstra e Bellman-Ford
Studio comparativo tra gli algoritmi di Dijkstra e Bellman-Ford
 
Presentazione
PresentazionePresentazione
Presentazione
 
Java Symbolic Regression - Machine Learining
Java Symbolic Regression - Machine LeariningJava Symbolic Regression - Machine Learining
Java Symbolic Regression - Machine Learining
 
Syntactical errors detection 1
Syntactical errors detection 1Syntactical errors detection 1
Syntactical errors detection 1
 
Extended summary of "Solving the length constrained K-drones rural postman pr...
Extended summary of "Solving the length constrained K-drones rural postman pr...Extended summary of "Solving the length constrained K-drones rural postman pr...
Extended summary of "Solving the length constrained K-drones rural postman pr...
 
Prot-09 pchar
Prot-09 pcharProt-09 pchar
Prot-09 pchar
 
Support Vector Machines: concetti ed esempi
Support Vector Machines: concetti ed esempiSupport Vector Machines: concetti ed esempi
Support Vector Machines: concetti ed esempi
 
Qualità del servizio in una uo di bioimmagini digitale
Qualità del servizio in una uo di bioimmagini digitaleQualità del servizio in una uo di bioimmagini digitale
Qualità del servizio in una uo di bioimmagini digitale
 
Un metodo di progettazione di reti locali con esigenze di qualità del servizio
Un metodo di progettazione di reti locali con esigenze di qualità del servizioUn metodo di progettazione di reti locali con esigenze di qualità del servizio
Un metodo di progettazione di reti locali con esigenze di qualità del servizio
 
Presentazione Sviluppo e confronto di tecniche di stima della traiettoria di ...
Presentazione Sviluppo e confronto di tecniche di stima della traiettoria di ...Presentazione Sviluppo e confronto di tecniche di stima della traiettoria di ...
Presentazione Sviluppo e confronto di tecniche di stima della traiettoria di ...
 
Classificazione pazienti con la SLA tramite SVM integration
Classificazione pazienti con la SLA tramite SVM integrationClassificazione pazienti con la SLA tramite SVM integration
Classificazione pazienti con la SLA tramite SVM integration
 
Network Anomaly Detection col Conformal Prediction
Network Anomaly Detection col Conformal PredictionNetwork Anomaly Detection col Conformal Prediction
Network Anomaly Detection col Conformal Prediction
 
Definizione e comparazione dei modelli di classificazione con Scikit-Learn
Definizione e comparazione dei modelli di classificazione con Scikit-LearnDefinizione e comparazione dei modelli di classificazione con Scikit-Learn
Definizione e comparazione dei modelli di classificazione con Scikit-Learn
 
Prot09 Gruppo5
Prot09 Gruppo5Prot09 Gruppo5
Prot09 Gruppo5
 

Approximate Algorithms for the Network Pricing Problem with Congestion - MS Thesis in Computer Science & Engineering

  • 1. UNIVERSITÀ DEGLI STUDI DI TRIESTE Facoltà di Scienze Matematiche, Fisiche e Naturali c.d.l. magistrale in informatica - curr. ingegneria informatica Approximate algorithms for the Network Pricing Problem with Congestion Laureanda: Relatore: Desirée Rigonat Chiar.mo Prof. Lorenzo Castelli Anno Accademico 2011 - 2012 Sessione Estiva
  • 2. Parte del presente lavoro di tesi è stata sviluppata presso il gruppo di Graphes et Optimisation Mathematique (G.O.M.) dell’Université Libre de Bruxelles sotto la supervisione della Prof.ssa Martine Labbé. Il lavoro è stato poi completato presso il laboratorio di Ricerca Operativa dell’Università degli Studi di Trieste sotto la supervisione del Professor Lorenzo Castelli.
  • 3. Indice Network Pricing Problem; Network Pricing Problem con Congestione; Algoritmi sviluppati: One Step algorithm; Algoritmi sviluppati: Two Steps algorithm; Implementazione; Test numerici e risultati.
  • 4. Network Pricing Problem Rete Stradale Leader Utenti (followers) •possiede tratti della rete •può fissare delle tariffe •viaggiano sulla rete •vuole ricavare il massimo profitto •vogliono spendere il meno possibile
  • 5. Network Pricing Problem Per massimizzare il profitto: Leader impone tariffe di pedaggio sui suoi archi in base alla distribuzione degli utenti Per minimizzare il costo del viaggio: Follower scelgono il proprio percorso in base ai costi degli archi (e quindi anche in base alle tariffe)
  • 6. Network Pricing Problem Interdipendenza e concorrenza •I due agenti hanno interessi contrapposti; •Se le tariffe sono troppo alte, gli utenti sceglieranno un percorso alternativo più economico; •Se le tariffe sono troppo basse, il leader va out of business.
  • 7. Network Pricing Problem Rete stradale: grafo pesato Leader & followers: problema di ottimizzazione bilivello
  • 8. Network Pricing Problem Grafo: •Insieme di nodi: N •Insieme di archi tariffati: A •Insieme di archi non tariffati: B •Costo degli archi A: costo fisso (c) + tariffa (t) •Costo degli archi B: costo fisso (d) Utenti: •Numero di utenti (unità di flusso): x •Coppie ordinate di nodi Origine/Destinazione •Unità di flusso x per coppia O/D: domanda (d) coppia O/D + domanda d = Commodity (insieme K)
  • 9. Network Pricing Problem subject to: Shortest Path Problem
  • 10. Network Pricing Problem Ulteriori assunzioni: •Esistenza di un Toll-Free Path per ogni commodity esiste sempre sulla rete almeno un percorso composto di soli archi non tariffati; •Politica favorevole al leader In presenza di più percorsi di pari costo, un utente sceglierà quello più vantaggioso per il leader.
  • 11. Network Pricing Problem Funzione Obiettivo del leader: bilineare NPP è un problema NP-Hard Risoluzione esatta tramite Branch and Bound: possibile ma diventa molto presto ingestibile; Algoritmi euristici basati su scomposizione: più efficienti ma non è sicuro che trovino la soluzione ottima.
  • 12. Network Pricing Problem; Network Pricing Problem con Congestione; Algoritmi sviluppati: One Step algorithm; Algoritmi sviluppati: Two Steps algorithm; Implementazione; Test numerici e risultati.
  • 13. Congested Network Pricing Problem Congestione Condizione che si verifica quando un canale di trasporto viene utilizzato al di sopra della sua capacità; •La qualità del servizio diminuisce; •Senza adeguati provvedimenti si arriva ad un blocco totale del traffico.
  • 14. Congested Network Pricing Problem # Utenti Costo del sulla rete viaggio Interdipendenza tra il flusso su un arco ed il suo costo. Se un utente vuole viaggiare su un dato arco, il costo di quell’arco aumenta. Se esiste un arco alternativo al precedente e più economico, l’utente si sposta sul nuovo arco, il cui costo aumenterà di conseguenza. Ogni utente sceglierà sempre l’alternativa di costo inferiore.
  • 15. Congested Network Pricing Problem Equilibrio Deterministic User Equilibrium (I principio di Wardrop): “per ciascuna coppia O/D il costo di equilibrio dei percorsi utilizzati è uguale, e risulta minore o uguale al costo di equilibrio di ogni percorso non usato” ...cioè all’equilibrio nessun utente può più ridurre il proprio costo di viaggio modificando la scelta del percorso. Sotto opportune condizioni è UNICO.
  • 16. Congested Network Pricing Problem Matematicamente... NPP CNPP costo fisso di un arco costo fisso di un arco funzione continua del costante: c, d flusso: C(x) Problema dei follower: lineare Problema dei follower: convesso Shortest Path Problem Traffic Assignment Problem
  • 17. Congested Network Pricing Problem subject to: Traffic Assignment Problem
  • 18. Congested Network Pricing Problem E’ un problema (almeno) NP-Hard Un solo caso di studio documentato in letteratura La complessità dipende dalla funzione di costo C(x) ... oltre alle problematiche già discusse per NPP.
  • 19. Congested Network Pricing Problem Funzione di costo C(x) Costante: (CNPP = NPP) Lineare: (ris. in tempo polinomiale) Generica: q = capacità dell’arco, α,β = parametri (ris. in tempo polinomiale se approssimata)
  • 20. Network Pricing Problem; Network Pricing Problem con Congestione; Algoritmi sviluppati: One Step algorithm; Algoritmi sviluppati: Two Steps algorithm; Implementazione; Test numerici e risultati.
  • 21. CNPP: Two Steps Algorithm Idea di fondo: Scomposizione del problema: risolvere sequenzialmente il problema del leader e dei follower In pratica: Fissate t, risoluzione problema follower (traffic assignment) per ottenere x + Fissate x, Risoluzione problema leader per ottenere t
  • 22. CNPP: Two Steps Algorithm Inner Loop: Risoluzione problema dei follower Successione convergente di approssimazioni lineari (shortest path) con t fissate Test di arresto: Δ val. F.O. del leader < ε Outer Loop: Risoluzione problema del leader Soluzione CNPP (una volta fissate x, diventa un problema lineare)
  • 23. CNPP: Two Steps Algorithm Algoritmo di Frank-Wolfe (Conditional Gradient) Soluzione approssimazione lineare Traffic Assignment: Shortest Path configurazione di flusso Lin. x Test di arresto: Equilibrio: val. F.O. prob. convesso - val. F.O. appros. lin < ε Combinazione convessa con x delle iteraz. precedenti New x = Old x + μ (Lin.x - Old x)
  • 24. CNPP: One Step Algorithm Idea di fondo: Trovare x e t allo stesso tempo Successione di approssimazioni lineari dell’intero CNPP In pratica: Conditional Gradient (Algoritmo di Frank-Wolfe) + calcolo della variazione delle tariffe t per quell’iterazione
  • 25. CNPP: One Step Algorithm Soluzione approssimazione lineare del CNPP: configurazione di flusso Lin. x variazione di tariffe ∆t Test di arresto: Equilibrio per il problema del follower? Combinazione convessa con x delle iteraz. precedenti New x = Old x + μ (Lin.x - Old x) Aggiornamento tariffe New t = Old t + ∆t
  • 26. Network Pricing Problem; Network Pricing Problem con Congestione; Algoritmi sviluppati: One Step algorithm; Algoritmi sviluppati: Two Steps algorithm; Implementazione; Test numerici e risultati.
  • 27. Implementazione Programma scritto in linguaggio C; Utilizzo suite di ottimizzazione Xpress (problemi di ottimizzazione in linguaggio Mosel); Interfacciamento tra programma C e optimizer tramite API per embedded Mosel.
  • 29. File di dati XML •Formato ad-hoc: dati riutilizzabili per progetti futuri •Descrive un’istanza (C)NPP completa
  • 30. File di dati XML <graph> <?xml version="1.0" ! encoding="UTF-8"?> ! ! <node> <npp> ! ! ! <id>n0</id> ! <gdata> ! ! </node> ! <commodities> ! ! <nodes>6</nodes> [....] ! ! <user> ! ! <tarcs>4</tarcs> ! ! ! <id>k0</id> ! ! <farcs>6</farcs> ! ! <arc> ! ! ! <src>n0</src> ! ! <kcom>1</kcom> ! ! ! <id>a0</id> ! ! ! <dst>n5</dst> ! </gdata> ! ! ! <src>n0</src> ! ! ! <dem>11</dem> ! ! ! ! <dst>n1</dst> ! ! </user> <graph> [....] ! ! ! <cost>1</cost> ! </commodities> </graph> ! ! ! <capacity>5</capacity> ! ! ! <directed>true</directed> <commodities> [....] ! ! ! <tariffed>true</tariffed> </commodities> ! ! </arc> ! ! ! [....] </npp> ! </graph> <gdata> <graph> <commodities> Dimensioni del grafo Descrizione nodi e archi Descrizione commodity
  • 31. Network Pricing Problem; Network Pricing Problem con Congestione; Algoritmi sviluppati: One Step algorithm; Algoritmi sviluppati: Two Steps algorithm; Implementazione; Test numerici e risultati.
  • 32. Test e Risultati tempo di esecuzione
  • 33. Test e Risultati tempo di esecuzione
  • 34. Test e Risultati soluzioni simili (diff. < 15%) Percentuale più alta sulle reti più semplici
  • 35. Test e Risultati soluzioni diverse (diff. > 15%) One Step dà risultati migliori sulle reti con meno archi tariffati; viceversa sulle reti con più archi tariffati Two Steps si comporta meglio.
  • 36. Test e Risultati variazione precisione del criterio d’arresto
  • 37. Sviluppi futuri Migliorare Two Steps con algoritmo più veloce per risoluzione problema dei follower Unire le due strategie: algoritmo che risolva rapidamente problema dei follower e che vari tariffe in modo adattivo

Notes de l'éditeur

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n