Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
1.1. Introduzione
1
L’ottimizzazione delle capacità è un classico NDP che può essere formulato sia
con approccio discreto (Magnanti e Wong, 1984) che con approccio continuo
(Steenbrink, 1974; Abdulaal e LeBlanc, 1979; Marcotte, 1983). Il problema, che è
per sua natura di tipo bilivello, è stato affrontato seguendo differenti approcci.
Tralasciando i metodi di ricerca della soluzione di tipo probabilistico, quali il
simulated annealing (Friesz et al. , 1992) e gli algoritmi genetici, sono due i
principali approcci di tipo deterministico. Nel primo si utilizza l’analisi di
sensitività dell’equilibrio al fine di ricondursi formalmente ad un problema ad un
solo livello (Tobin e Friesz, 1988; Davis, 1994; Yang, 1997). Nel secondo si
conserva la natura bilivello del NDP utilizzando procedure di tipo iterativo
riconducibili alla teoria dei giochi, che solitamente approssimano le soluzioni del
gioco di Stackelberg con soluzioni del corrispondente gioco di Cournot-Nash
(Fisk, 1984), benché esse possano essere anche molto diverse (Marcotte, 1981). In
questa sede il NDP viene formulato e risolto come un gioco di Stackelberg, pur
nella particolarità del contesto in esame. E’ infatti opportuno evidenziare che,
poiché la possibilità di operare liberamente sui pedaggi consente di determinare la
configurazione dei flussi di equilibrio, si tratta di fatto di una progettazione di tipo
normativo (Dantzig et. al. , 1979).
2
con funzioni di prestazione non separabili in contesto multiutente e multimodo.
Gli utenti vengono ripartiti in classi omogenee. La generica classe u∈U , ove U
è l’ insieme delle classi considerate, è costituita da N u > 0 utenti identici rispetto
alle caratteristiche individuali che influenzano l’equilibrio.
In particolare, essi hanno uno stesso insieme di scelta J u , costituito da un numero
positivo e finito di alternative, tra le quali ne viene scelta una di massima utilità,
secondo il metodo dell’analisi delle scelte discrete. L’utilità Uju della generica
alternativa j∈J u è la somma di un termine finito Vju , detto utilità sistematica, e di
un residuo aleatorio εju , avente media nulla e varianza finita:
Uju = Vju +εju . (2)
Si assume che la funzione densità di probabilità di questi residui aleatori sia C1,
strettamente positiva e indipendente dalle utilità sistematiche, dando luogo a
modelli di scelta probabilistici, additivi, strettamente positivi e differenziabili
(Cantarella, 1997). Inoltre si assume, come di consueto:
Vju = Xju -γ u⋅Cju j = 1, … , |J u| , (3)
ove Xju e Cju esprimono sinteticamente gli attributi di utilità positiva e i costi
generalizzati, rispettivamente, dell’alternativa j , mentre lo scalare positivo γ u è
l’utilità marginale del reddito.
La probabilità di scelta Pju della generica alternativa j∈J u è la probabilità che j
sia l’alternativa di massima utilità:
Pju = Pr[Uju = max k∈J u Uku] = Pr[Vju+εju ≥ Vku+εku ∀k∈J u] . (4)
Il flusso Fju dell’alternativa j è quindi dato da:
Fju = N u⋅Pju , (5)
mentre per definizione si ha:
∑j∈J u Fju = N u . (6)
La soddisfazione W u è il valor medio della massima utilità:
W u = E[max k∈J u Vku+εku] . (7)
La generica alternativa è associata ad un cammino che connette l’origine dello
spostamento alla sua destinazione attraverso una specifica sequenza di archi sulla
rete multimodale che rappresenta l’offerta di trasporto. Quando uno spostamento
comporta scelte adattive (ad es. uno spostamento sul modo di trasporto collettivo),
la generica alternativa viene invece associata ad un ipercammino. Scegliendo
opportunamente la forma della funzione densità di probabilità dei residui aleatori,
le correlazioni tra le alternative di cui dispone il generico utente possono essere
specificate in modo tale da fornire una struttura a livelli gerarchici al modello di
scelta. In tal caso, una alternativa è un cammino sull’albero delle scelte dell’utente
(Ben Akiva, Lerman, 1985) che specifica la scelta effettuata ad ogni livello:
generazione, distribuzione, ripartizione modale ed assegnazione. Pertanto, il
modello di scelta considerato supporta i modelli di domanda elastica solitamente
utilizzati.
Al fine di formalizzare il modello di domanda, introduciamo il vettore
W = (W 1, … , W u , … , W |U|)T di dimensioni (|U| × 1) e i vettori N e Γ aventi
struttura analoga a W, i cui generici elementi sono N u e γ u , rispettivamente.
3
Inoltre, introduciamo il vettore V u = (V1u, … , Vju , … , V|J u|u)T , di dimensioni
(n × 1), ove n = ∑u∈U |J u| e V u = (V1u, … , Vju , … , V|J u|u)T, e i vettori X, C, P e F
aventi struttura analoga a V . Infine, I e è la matrice di dimensioni (n × |U|)
ottenuta da I(|U|) ricopiando la generica u-esima riga per |J u| volte. Le (3), le (5) e
le (6) possono essere espresse in forma compatta come segue:
V = X -diag(I e⋅Γ )⋅C , (8)
F = diag(I e⋅N )⋅P , (9)
I e T⋅F = N . (10)
Il modello di domanda è quindi formalmente espresso da:
F = diag(I e⋅N )⋅P(X-diag(I e⋅Γ )⋅C ) = F(C ) , (11)
e la soddisfazione da:
W = W(X-diag(I e⋅Γ )⋅C ) = Ŵ(C ) , (12)
ove la funzione P(V ), detta mappa delle scelte, e la funzione F(C ), detta funzione
di domanda, sono entrambe C2 e prendono valori nell’insieme compatto convesso
e non vuoto SP = {P∈ℜn: I e T⋅P = I(|U|), P ≥ 0} e SF = {F∈ℜn: I e T⋅F = N, F ≥ 0},
rispettivamente, mentre le funzioni W(V ) e Ŵ(C ), che esprimono le
soddisfazioni, sono entrambe C2. Vale inoltre la seguente relazione (Bellei,
Gentile e Papola, 2000):
F(C+h) = F(C ) ⇔ h∈H = {h∈ℜn : h = I e⋅h’ , h’∈ℜ|U|} . (13)
La rete multimodale di infrastrutture e servizi che costituisce l’offerta di
trasporto viene qui rappresentata mediante un ipergrafo orientato G = (N, A), dove
N è l’insieme dei nodi, limitato e non vuoto, e A è l’insieme degli archi. Il
generico arco a∈A è identificato dalla sua coda TL(a)∈N e dalla sua testa
HD(a)⊆N. Un ipercammino di G , con origine o∈N e destinazione d∈N, è un
ipergrafo r = (N(r), A(r)) aciclico e minimale – da ogni nodo esce al più un arco –
tale che A(r)⊆A , N(r) = {o} + [∪a∈A(r) HD(a)] e ogni i∈N(r) è connesso a d su r .
Per i dettagli si faccia riferimento a Nguyen, Pallottino e Gendreau (1998).
Al generico arco a∈A viene associato un costo d’arco specifico di classe cau e
un flusso d’arco specifico di classe fau con riferimento ai quali valgono le seguenti
relazioni:
Cju = Σa∈A cau⋅πaju j = 1, … , |J u| , u = 1, … , |U| ; C = Π T⋅c , (14)
fau = Σj∈Ju Fju⋅πaju a = 1, … , |A| , u = 1, … , |U| ; f = Π ⋅F , (15)
dove πaju è la probabilità che l’arco a venga utilizzato dagli utenti appartenenti alla
classe u come elemento dell’ipercammino associato all’alternativa j , mentre Π è la
matrice di dimensioni (ν × n) , con ν = |A|⋅|U| , diagonale a blocchi, il cui generico
blocco è la matrice Π u di dimensioni (|A| × |J u|) i cui elementi sono le probabilità πaju
relative alla classe u ; c = (c1T, … , c uT, … , c|U| T)T e f = ( f 1T, … , f uT, … , f |U| T)T
sono vettori di dimensioni (ν × 1) le cui generiche componenti sono i vettori
c u = (c1u , … , cau , … , c|A|u)T e f u = ( f1u , … , fau , … , f|A|u)T, rispettivamente, di
dimensioni (|A| × 1).
Il principale vantaggio di impiegare una rappresentazione della rete basata sul
concetto di ipergrafo orinetato è la possibilità di esprimere i costi generalizzati di
alternativa in termini dei costi d’arco e i flussi d’arco in termini dei flussi di
4
alternativa in forma additiva attraverso la (14) e la (15), rispettivamente, anche nel
caso di scelte adattive. E’ opportuno evidenziare che se non vengono rappresentate
scelte adattive, l’ipergrafo orientato diventa un grafo orientato e la matrice Π
diventa la matrice di incidenza archi cammini.
La congestione viene rappresentata attraverso la funzione di prestazione d’arco
c( f , z), assunta C2, che viene introdotta insieme alla funzione di costo d’arco
c( f , t, z) al fine di separare l’onere del pedaggio dal costo di viaggio sull’arco:
c = c( f , t, z) = c( f , z) + t . (16)
Usando la (16) e la (15), la (14) diventa:
C = Π T⋅c(Π T⋅F , z) +Π T⋅t = C(F, z) +Π T⋅t = C(F, t, z) . (17)
La C(F, t, z), detta funzione di offerta, e la C(F, z) , detta funzione di prestazione,
in base alla (17) sono C2.
La rappresentazione multiutente della rete basata sulla definizione di costi e
flussi d’arco specifici di classe, utile per formalizzare, risulta disagevole a livello
di implementazione. A tal fine conviene rappresentare la congestione, come in
Daganzo (1983), attraverso una relazione che esprima il vettore dei tempi
generalizzati d’arco s = (s1 , … , sa , … , s|A|)T in funzione del vettore dei flussi
equivalenti d’arco v = (v1 , … , va , … , vA|)T:
s = s(v, z) . (18)
Specificamente si assume:
cau = η u⋅sa a = 1, … , |A| , u = 1, … , |U| , (19)
va = ∑ u∈U ϑau ⋅fau +ξ a a = 1, … , |A| , (20)
dove η u indica il valore monetario dell’unità di tempo per la classe u e ϑau è un
parametro che esprime il peso sulla congestione dei veicoli utilizzati dalla classe u
e il relativo coefficiente di occupazione – se l’arco a non è un arco stradale allora
ϑau = 1 – mentre il termine ξ a viene introdotto essenzialmente per tener conto
degli effetti sulla congestione dell’eventuale presenza sull’arco a di linee di
trasporto collettivo.
Dalla (15) usando la (11) e la (14) si ottiene la mappa di caricamento della rete:
f(c) = Π ⋅F(Π T⋅c) . (21)
Poiché la funzione di domanda è C2 , anche la f(c) è tale. Essa, inoltre, prende
valori nell’insieme Sf = { f ∈ℜν: f = Π ⋅F , F∈SF} che è compatto, convesso e non
vuoto perché tale è SF .
Per ogni dato valore delle variabili di progetto t e z , uno UE è la
configurazione dei flussi e dei costi corrispondente ad una soluzione del seguente
problema di punto fisso:
f UE = f[c( f UE, z) + t] . (22)
Con riferimento ai modelli di domanda e di offerta considerati, è noto che esiste
almeno uno UE e che, se la funzione di costo d’arco è monotonica non
decrescente, allora lo UE è unico (Cantarella, 1997).
5
1.2.2. La funzione obbiettivo
Con riferimento agli insiemi ammissibili del problema (1), in questo lavoro si
assume:
St ≡ ℜν , (28)
Sz = {z∈ℜ|P|: 0 ≤ z min ≤ z ≤ z max < ∞, G(z) ≤ B} , (29)
cioè: non si prevedono restrizioni né sull’insieme degli archi ove applicare il
pricing, né sull’entità e il segno dei pedaggi; il budget B è fissato
indipendentemente dagli introiti del pedaggio; la capacità degli archi appartenenti
all’insieme degli archi di progetto P è limitata ad un intervallo chiuso.
Si assumono infine le seguenti ipotesi:
B > G(z min) , (30)
z min < z max. (31)
∇G(z) > 0 ∀z∈Sz . (32)
La (30) stabilisce che il budget B è più che sufficiente per realizzare le capacità
minime z min , la (31) stabilisce che l’intervallo di progetto abbia misura non nulla,
la (32), invece, tiene conto del fatto che per incrementare le capacità occorre
investire. L’insieme ammissibile Sz è pertanto compatto e non vuoto.
Studiamo ora la regolarità dei vincoli espressi da Sz , ricordando che i punti di
non regolarità sono quelli in corrispondenza dei quali i gradienti dei vincoli attivi
sono linearmente dipendenti. Le ipersuperfici dei vincoli z ≥ z min e z ≤ z max sono
piani reciprocamente perpendicolari o paralleli, in base alla (31), non coincidenti e
quindi non generano punti di irregolarità, mentre in base alla (32) l’ipersuperficie
6
del vincolo di budget non può essere tangente a detti piani, perché questi sono
paralleli ai piani coordinati. Può invece accadere che l’ipersuperficie del vincolo
di budget transiti per uno o più vertici dell’intervallo z min ≤ z ≤ z max, rendendo
irregolari tali punti. Escludendo che ciò si verifichi, si assume che i vincoli
espressi da Sz siano regolari. La figura 1 illustra tali concetti con riferimento al
caso di due archi stradali.
z2 ∇G(z’’)
∇G(z’)
z’’ z max
z’
G(z) = cost
G(z) = B
z min
z1
7
benefici legati agli effetti della domanda liberata.
Si definiscono costi marginali sociali le derivate parziali rispetto ai flussi della
funzione di costo sociale SC( f , z):
msc = ∇f SC( f , z) = c( f , z) +∇f c( f , z)⋅f +∇f E( f , z) = msc( f , z) . (34)
Poiché in base alla (33) SC( f , z) risulta C2, si ha che msc( f , z) è C1 .
Un SE è la configurazione dei flussi e dei costi corrispondente ad una soluzione
del seguente problema di punto fisso:
f SE = f[msc( f SE, z)] , (35)
ottenuto sostituendo nella (22) la funzione c( f , t, z) con la msc( f , z) in base alla
(16). Sia f SE(z) la mappa delle soluzioni del problema di punto fisso (35). Risulta :
∅ ≠ f SE(z) ⊆ Sf ∀z∈Sz . (36)
8
In Bellei, Gentile e Papola (2000) si è dimostrato che la mappa CKKT(z)
fornisce, a meno di un qualsiasi termine h∈H, le soluzioni, in termini di costi
generalizzati di alternativa, del SE:
CKKT(z) = {C∈ℜn : C = Π T⋅msc( f , z) +h , f∈f SE(z) , h∈H} . (40)
Sia z( f ) la mappa delle soluzioni che rispettano le condizioni del primo ordine
KKT con riferimento al problema di ottimo:
min z SC( f , z) s.a: z∈Sz . (41)
Poiché la funzione SC( f , z) è continua e l’insieme Sz è compatto e non vuoto, in
base al teorema di Weierstrass, si ha che z( f ) ≠ ∅ ∀f∈Sf . Dalla (38) risulta:
zKKT(C) = {z∈ℜp : z ∈ z( f ) , f = Π ⋅F(C )} . (42)
Si noti che, in base alla (13), qualsiasi sia h∈H , l’insieme dele soluzioni del
problema di punto fisso f = Π ⋅F(Π T⋅msc( f , z) +h) è f SE(z) .
Ne segue che usando la (40) e la (42) dal sistema (39) si ricavano condizioni
necessarie per il problema (1) in termini di flussi d’arco e di capacità:
f∈f SE(z) , z∈z( f ) . (43)
Esplicitiamo dunque la mappa z( f ). Il Lagrangiano del problema (41) è :
L( f, z, µ, η) = SC( f, z) +∑a∈P µ mina ⋅(z mina -za) +∑a∈P µ maxa ⋅(za -z maxa) +η⋅[G(z) -B] . (44)
Le condizioni del primo ordine KKT sono quindi date dal seguente sistema di
equazioni e disequazioni:
η ≥ 0 ; η⋅[G(z) -B] = 0 (45)
µ ≥ 0 ; µ mina ⋅(z mina -za) = 0 , µ maxa ⋅(za -z maxa) = 0 ∀a∈P (46)
∂L( f , z, µ, η)/∂za = ∂SC( f, z)/∂za -µ mina +µ maxa +η⋅∂G(z)/∂za = 0 ∀a∈P (47)
z min ≤ z ≤ z max , G(z) ≤ B (48)
Se uno dei vincoli di disuguaglianza non è attivo, il corrispondente
moltiplicatore è nullo, pertanto, con riferimento alla capacità di progetto za , a∈P,
se risulta z mina < za < z maxa la corrispondente (47) diventa:
∂SC( f, z)/∂za +η⋅∂G(z)/∂za = 0 . (49)
Poiché è z mina < z maxa , i due vincoli che definiscono l’intervallo di progetto non
possono essere contemporaneamente attivi. Ne segue che se uno di essi è attivo la
(47) ne fornisce il moltiplicatore. In base alle (46) si hanno pertanto le seguenti
condizioni, valide rispettivamente quando za = z mina e za = z maxa :
µ mina = ∂SC( f, z)/∂za +η⋅∂G(z)/∂za ≥ 0 , (50)
µ maxa = -∂SC( f , z)/∂za -η⋅∂G(z)/∂za ≥ 0 . (51)
Con riferimento al generico arco a∈P, definiamo rendimento a flussi costanti la
quantità ρa che esprime la riduzione del costo sociale conseguente all’impiego di
una unità aggiuntiva del budget al fine di aumentare za , a flussi costanti.
Differenziando la (33) si ottiene:
ρa = -∂SC( f, z)/∂za / ∂G(z)/∂za = ρa( f, z) = (52)
= -[∑u∈U ∑b∈A fbu⋅∂cbu( f , z)/∂za +∂E( f , z)/∂za] / ∂G(z)/∂za -1 a∈P. (53)
Al fine di interpretare correttamente le condizioni necessarie è opportuno
dividere le (49), le (50) e le (51) per il corrispondente termine ∂G(z)/∂za , positivo
in base alla (32). Utilizzando, infine, la definizione (52), la mappa z( f ) è data dai
punti z che rispettano le seguenti condizioni:
9
z mina < za < z maxa ⇒ ρa = η ; za = z mina ⇒ ρa ≤ η ; za = z maxa ⇒ ρa ≥ η , (54)
G(z) < B ⇒ η = 0 ; G(z) = B ⇒ η > 0 , (55)
ossia:
• tutte le capacità di progetto i cui vincoli non sono attivi hanno lo stesso
rendimento a flussi costanti;
• tale rendimento deve essere maggiore di quello delle capacità poste al
valore minimo ammissibile e minore di quello delle capacità poste al valore
massimo ammissibile;
• il rendimento, è nullo se non tutto il budget viene impiegato, , mentre è
positivo se il vincolo di bilancio è soddisfatto all’uguaglianza.
10
L’algoritmo risolutivo di seguito riportato calcola in sostanza un SE mediante
l’MSA assumendo come variabili correnti i flussi equivalenti d’arco v e dei flussi
monetari equivalenti τ , utili a calcolare i pedaggi marginali senza introdurre
variabili d’arco specifiche di classe. Esso differisce da un’assegnazione di
equilibrio per l’introduzione del passo 3, in cui vengono calcolate le capacità
corrispondenti alla soluzione del problema (41). Con w vengono indicate le
soddisfazioni di nodo e con p le probabilità condizionate di nodo.
Algoritmo di assegnazione con modifica della funzione di costo d’arco
1) inizializzazione
2) k = k +1 aggiorna il contatore delle iterazioni
3) z k = z(v k, τ k) calcola le capacità
4) s k = s(v k, z k) calcola i tempi d’arco
5) t k = mt(v k, τ k, z k) calcola i pedaggi marginali d’arco
6) s k = s k +η k perturba i tempi d’arco (Probit)
7) (w k, p k) = r(o, s k, t k, z k) calcola soddisfazioni e probabilità di nodo
8) d k = d(wk) calcola la domanda
9) yvk = yv( p k, d k, z k) , yτk = yτ( p k, d k, z k) carica la domanda sulla rete
10) v k+1 = v k +(1/k )⋅(yvk -v k) , τ k+1 = τ k +(1/k )⋅(yτk -τ k) aggiorna i flussi
11) if max a∈A |vak+1 -vak| / vak < ε then stop criterio di arresto
12) goto 2
Inizializzazione
1) k = 0 inizializza il contatore delle iterazioni
2) v k = 0, τ k = 0 [v k = v old , τ k = v old] inizializza i flussi d’arco
3) t k = 0 , z k = z old inizializza le variabili di progetto
4) s k = s(v k, z k) calcola i tempi d’arco
5) o = o(s k, t k, z k) ordina i nodi (Logit)
6) (w k, p k) = r(o, s k, t k, z k) calcola soddisfazioni e probabilità di nodo
7) d k = d(w k) calcola la domanda
8) yvk = yv( p k, d k, z k) , yτk = yτ( p k, d k, z k) carica la domanda sulla rete
9) v k+1 = y k , τ k+1 = yτk aggiorna i flussi
Un metodo, poco efficiente ma robusto, per risolvere il problema (41) è il
seguente algoritmo di allocazione incrementale della risorsa budget.
Algoritmo di allocazione incrementale della risorsa
1) z = z min
2) ρak = ρa(v k, τ k, z k) a∈P
3) a* : ρa*k = max a∈P ρak s. a: zak < z maxa
4) if ρa*k ≤ 0 then stop
5) za*k = za*k +∆ za*
6) if G(z k) ≥ B then stop
7) goto 2
11
A partire dalle capacità minime richieste, in ogni iterazione viene incrementata
la capacità cui risulta associato il massimo rendimento, escludendo dalla ricerca le
capacità che hanno già raggiunto il massimo valore ammissibile. La procedura si
interrompe quando si esaurisce il budget, quando tutte le capacità hanno raggiunto
il loro valore massimo ammissibile o quando il massimo rendimento individuato
non è positivo, coerentemente con il fatto che il budget non investito ha un
rendimento nullo.
L’algoritmo si basa sull’ipotesi che i rendimenti sono decrescenti con
l’investimento, che è consistente con l’assunto di convessità. E’ intuitivo che, per
∆z → 0, l’allocazione incrementale del budget individua un vettore z∈z( f ) che
soddisfa le condizioni (54)-(55), pertanto se ne omette la dimostrazione che
potrebbe essere svolta ragionando per assurdo.
Nel caso di funzioni di rendimento separabili, quali sono quelle derivate da
funzioni c( f , z), e( f , z) e g(z) separabili in termini di z, l’algoritmo può essere
convenientemente implementato mantenendo aggiornata una lista ordinata dei
rendimenti mediante il calcolo e il riposizionamento ad ogni iterazione del
rendimento relativo alla capacità che è stata incrementa.
xa , ξa
x2 , ξ2
budget da allocare
12
costi ξ degli archi di investimento sono legati ai rendimenti ρ attraverso una
qualunque funzione separabile decrescente. La domanda che insiste sulla rete è il
budget B che deve spostarsi tra i due nodi e pertanto i flussi d’arco x sono flussi di
investimento. All’equilibrio (deterministico) tutti gli archi utilizzati, ossia con
flusso di investimento positivo, hanno lo stesso costo e quindi lo stesso
rendimento, che è non maggiore (rendimento non minore) di quello degli archi di
investimento non utilizzati.
Si noti che, in realtà, detta analogia non è perfetta perché le (54)-(55)
contengono vincoli sulle variabili di progetto leggermente più complessi di quelli
di non negatività caratteristici dell’equilibrio. Tale discrasia può peraltro essere
agevolmente eliminata. Per quanto concerne il vincolo z ≥ z min si deve considerare
che i flussi di investimento necessari a realizzare le capacità minime richieste
devono comunque essere spesi, pertanto è possibile sottrarre al budget il
corrispondente ammontare e ridefinire coerentemente il valore delle capacità
attauali assumendo come variabili di progetto z i relativi incrementi. Per quanto
riguarda invece il vincolo z ≤ z max si tratta di introdurre una sorta di vincolo di
capacità sugli archi. Anche se il problema di assegnazione con vincoli di capacità
può essere formulato come tale, l’introduzione esplicita di tali vincoli crea
problemi sia teorici che algoritmici; in questa sede si è preferito approssimarli
imponendo in corrispondenza della capacità un rapido aumento del costo d’arco,
in modo da conservare la continuità delle funzioni di offerta e assicurare
l’esistenza dell’equilibrio.
Il metodo della iper-rete con archi fittizi di investimento consiste nel risolvere
una assegnazione congiunta alla rete fittizia di investimento e alla rete che
rappresenta l’offerta di trasporto delle rispettive domande. Trattandosi di una
assegnazione, il problema può essere formalizzato mediante il seguente problema
di punto fisso nei flussi f ed x :
( f , x) = (f[cms( f , g -1(x))] , x[ξ(ρ( f , g -1(x)))]) . (59)
L’esistenza della soluzione è garantita dall’invertibilità di g(z) . Per quanto
concerne l’unicità è opportuno evidenziare che in genere i costi d’arco della rete
reale crescono con i flussi di utenti e decrescono con i flussi di investimento,
mentre i costi degli archi di investimento, decrescenti con i rendimenti, si
comportano in modo opposto. L’asimmetria dello Jacobiano delle funzioni di
costo d’arco può quindi effettivamente condurre alla non unicità dell’equilibrio, in
accordo con la non convessità, riconosciuta in letteratura, del NDP.
Anche l’algoritmo risolutivo che segue, così come il precedente, calcola in
sostanza un SE mediante l’MSA. In questo caso, però si assumono come variabili
correnti, oltre ai flussi equivalenti d’arco v e ai flussi monetari equivalenti τ , i
flussi di investimento x . La particolarità dell’algoritmo risiede nell’introduzione
dei passi 3, in cui si inverte la funzione di investimento, 7, in cui si calcolano i
rendimenti, e soprattutto del passo 10.3, in cui a partire dai rendimenmti si
calcolano i costi degli archi di investimento e, in base a questi, il budget viene
caricato sulla rete fittizia.
13
Algoritmo di assegnazione alla iper-rete con archi fittizi di investimento
1) inizializzazione
2) k = k +1 aggiorna il contatore delle iterazioni
3) z k = g -1(x k) calcola le capacità
4) s k = s(v k, z k) calcola i tempi d’arco
5) t k = mt(v k, τ k, z k) calcola i pedaggi marginali d’arco
6) s k = s k +η k perturba i tempi d’arco (Probit)
7) ρ k = ρ(v k, τ k, z k) calcola i rendimenti
8) (w k, p k) = r(o, s k, t k, z k) calcola soddisfazioni e probabilità di nodo
9) d k = d(w k) calcola la domanda
10) yvk = yv( p k, d k, z k) , yτk = yτ( p k, d k, z k) , yxk = yx(ρ k) carica le reti
11) v k+1 = v k +(1/k)⋅(yvk -v k) , τ k+1 = τ k +(1/k)⋅(yτk -τ k) , x k+1 = x k +(1/k)⋅(yxk -x k)
12) if max a∈A |vak+1 -vak| / vak < ε then stop criterio di arresto
13) goto 2
Inizializzazione
1) k = 0 inizializza il contatore delle iterazioni
2) v k = 0, τ k = 0 [v k = v old , τ k = v old] inizializza i flussi d’arco
3) t k = 0 , z k = z old inizializza le variabili di progetto
4) s k = s(v k, z k) calcola i tempi d’arco
5) ρ k = ρ(v k, τ k, z k) calcola i rendimenti
6) o = o(s k, t k, z k) ordina i nodi (Logit)
7) (w k, p k) = r(o, s k, t k, z k) calcola soddisfazioni e probabilità di nodo
8) d k = d(w k) calcola la domanda
9) yvk = yv( p k, d k, z k) , yτk = yτ( p k, d k, z k) , yxk = yx(ρ k) carica le reti
10) v k+1 = y k , τ k+1 = yτk , x k+1 = yxk aggiorna i flussi
Per assegnare il budget alla rete fittizia, il modo più diretto è impiegare un
caricamento deterministico del tipo tutto o niente, assumendo come funzione di
costo per gli archi di investimento l’opposto dei corrispondenti rendimenti.
In questa sede si utilizza invece un caricamento di tipo Logit, assumendo come
funzione di costo l’inverso del rendimento più 1:
ξ0k = 1 , ξak = 1/(ρak +1 +ερ) a∈P , (60)
yx a = B⋅e-ξ a /θI / [e-1/θI +∑b∈P e-ξ b /θI ] a∈ P+{0} .
k k
(61)
ove, θ I è il parametro Logit dell’investimento, ερ è un rendimento piccolo (es.
0.01) che viene introdotto per garantire la continuità dei costi nel caso limite di
rendimento pari a -1, corrispondente all’incremento di capacità su un arco non
utilizzato, mentre il pedice 0 indica l’arco a rendimento nullo associato al budget
non investito.
Si è optato per un caricamento stocastico perché l’impiego di un caricamento
deterministico del tipo tutto o niente comporta sia una complicazione teorica, che
una maggiore complessità computazionale. Da un punto di vista formale infatti
l’introduzione di mappe di caricamento deterministiche comporta l’abbandono del
14
contesto teorico adottato per l’equilibrio. Da un punto di vista algoritmico, mentre
il caricamento stocastico distribuisce il budget tra le diverse capacità ad ogni
iterazione, il caricamento tutto o niente ad ogni iterazione incrementa solo la
capacità dell’arco che ha il massimo rendimento; occorre pertanto procedere ad un
numero maggiore di iterazioni rendendo meno rapida la convergenza.
Giova ribadire che il metodo richiede l’inversione della funzione di
investimento. Tale compito, in generale assai oneroso in termini computazionali,
quando non impossibile, viene semplificato calcolando l’approssimazione lineare
dell’inversa della funzione di investimento, come segue.
z k = z k-1 +ℑ[∇g(z k-1)]⋅(x k -x k-1) ≈ g -1(x k) , (62)
ove l’operatore ℑ fornisce la matrice il cui generico elemento è l’inverso del
corrispondente elemento della matrice argomanento. Ne risulta però una euristica,
perché l’inversione è approssimata e perchè l’impiego di variabili dell’iterazione
precedente nel calcolo delle (62) compromette la coerenza dell’algoritmo con la
formulazione di punto fisso (59).
15
limite di 100 iterazioni non è stato mai raggiunto prima che il metodo
convergesse.
Il carico stocastico alla rete fittizia degli archi di investimento è stato eseguito
utilizzando un parametro Logit pari a 0.02, mentre l’allocazione incrementale
delle risorse è stata effettuata impiegando incrementi di capacità pari a 0.5 veic/h .
I vantaggi in termini efficienza conseguiti utilizzando l’assegnazione con archi
fittizi di investimento risultano notevoli, come si può verificare nella tabella 1 al
paragrafo successivo.
16
ottimizzando le capacità congiuntamente all’applicazione del marginal pricing.
Tali configurazioni sono state ricavate sia in presenza di un vincolo di Budget
posto a un livello tale da risultare attivo all’ottimo (PkB), che nel caso opposto
(Pk), equivalente, ai fini pratici, all’assenza del vincolo. Per ognuno di questi casi
sono riportate in Figura 3 gli istogrammi relativi a generazione, velocità media di
spostamento, ricavo dei pedaggi e surplus sociale, mentre la tabella 1 riporta tutti i
dati rilevanti delle prove effettuate.
Si può osservare come l’applicazione del metodo proposto porti a risultati in
linea con le aspettative, determinando le migliori soluzioni in corrispondenza
dell’assenza di vincoli di investimento, quando si ha il massimo livello di servizio
sulla rete, ma anche la massima mobilità e il massimo surplus. L’applicazione dei
pedaggi senza modifica delle capacità comporta un miglioramento notevole del
livello di servizio, ma al prezzo di una significativa compressione della domanda.
Con l’investimento in capacità, oltre ad ottenere ulteriori miglioramenti di livello
di servizio e di surplus sociale, si recupera in termini di generazione, parzialmente
nel caso vincolato e oltre il livello attuale nel caso non vincolato. L’investimento
relativo al caso non vincolato, che è circa cinque volte superiore rispetto al budget
del caso vincolato, determina in effetti dei benefici significativi sostanzialmente in
termini di generazione, mentre gli incrementi di livello di servizio e surplus sono
decisamente più contenuti.
UE SE PkB Pk UE SE PkB Pk
17
Tab. 1 – Risultati delle prove
variabile unità UE SE AIR B AFI B AIR AFI
Popolazione utenti / h 180250 180250 180250 180250 180250 180250
Spostamenti utenti / h 133611 112662 125617 125661 141477 141849
Generazione percentuale 74,1% 62,5% 69,7% 69,7% 78,5% 78,7%
Surplus Sociale Milioni di € / anno 2954 3270 3489 3485 3622 3619
Introiti da pedaggio Milioni di € / anno 0 1015 887 883 558 553
Soddisfazione tot. Milioni di € / anno 2954 2255 2652 2652 3294 3312
Tempo tot. sec / h 47329 22883 22776 22790 21080 20993
Velocità media km/h 20 27 28 28 34 34
Numero iterazioni numero 24 28 25 39 25 89
Tempo di calcolo sec 1,9 2,3 24,3 3,4 94,6 7,7
Investimento Milioni di € 426 426 1954 2103
Rendita equivalente Milioni di € / anno 50 50 229 247
1.6. Conclusioni
18
Bibliografia
19
Sommario
Nel presente lavoro viene affrontato il problema della progettazione congiunta dei
pedaggi e delle capacità stradali di una rete di trasporto esistente. Tale problema viene,
prima formalizzato ed analizzato come un NDP, poi viene ricondotto ad una assegnazione
di equilibrio equivalente ed infine viene risolto mediante un algoritmo di punto fisso di tipo
MSA . Due varianti dell’approccio risolutivo vengono presentate, una basata su una
modifica della funzione di costo d’arco, l’altra sull’introduzione di una iper-rete con archi
fittizi di investimento. Per concludere, con riferimento ad una rete reale aggregata, vengono
presentati alcuni risultati numerici del metodo proposto.
Abstract
In this paper we analyze the problem of designing jointly tolls and road capacities of an
existing network. First, the problem is formalized and analyzed as an NDP. Then it is
transformed in an equivalent equilibrium assignment problem, and finally it is solved
through the fixed point algorithm MSA. Two versions of this approach are presented. The
first is based on the modification of the arc cost function, the second on the introduction of
an hyper-network with investment arcs. Finally, with reference to a real aggregated
network, some results of the proposed method are presented.
20