II UNIVERSITÀ DEGLI STUDI DI ROMA “TOR VERGATA” Dipartimento di Ingegneria Civile Corso di Gestione ed esercizio dei sistemi di trasporto Docente: Ing. Pierluigi Coppola Modelli di simulazione dei sistemi di trasporto collettivo SOMMARIO 1. INTRODUZIONE .......................................................................................................................................................... 3 2. I MODELLI D’OFFERTA DEI SISTEMI DI TRASPORTO COLLETTIVO .............................................................. 3 2.1 Modelli d’offerta “a linee” ........................................................................................................................................ 4 2.2 Modelli d’offerta “a corse” ....................................................................................................................................... 6 2.3 Le funzioni di costo .................................................................................................................................................. 8 3. IL MODELLO DI SCELTA DEL PERCORSO AGLI IPERCAMMINI .................................................................... 11 3.2 Ipotesi comportamentali ed alternative di scelta ..................................................................................................... 12 3.3 Il modello di scelta fra gli ipercammini .................................................................................................................. 17 4. LA DETERMINAZIONE DEGLI IPERCAMMINI DI MINIMO COSTO ................................................................ 21 4.1 La definizione formale di ipercammino .................................................................................................................. 21 4.2 Un algoritmo per il calcolo dell’ipercammino di minimo costo ............................................................................ 22 4.3 Un algoritmo per il calcolo dei flussi ..................................................................................................................... 28 BIBLIOGRAFIA .............................................................................................................................................................. 30 APPENDICE A : RICHIAMI DI TEORIA DEI GRAFI E DELLE RETI ....................................................................... 31 2 1. INTRODUZIONE La caratteristica strutturale del trasporto collettivo è quella di offrire un servizio funzionante in modo discontinuo (cioè fra punti discreti nello spazio) e non contemporaneo (cioè disponibile solo in alcuni istanti di tempo corrispondenti orse). Esempi tipici sono i servizi di linea (autobus, treni, aerei) che possono essere utilizzati solo fra i terminali (fermate, stazioni, aeroporti) e sono disponibili solo ad alcuni istanti (gli orari di partenza delle corse). Queste caratteristiche fanno sì che i modelli di offerta che si utilizzano nella pratica per la simulazione di tali sistemi siano differenti dai modelli utilizzati per le reti stradali (sistemi di trasporto continui e simultanei). Inoltre i meccanismi comportamentali sulla base dei quali sono specificati i modelli di domanda, utilizzati per simulare le scelte di percorso (modelli a scelta mista adattiva-preventiva) sono sostanzialmente diversi da quelli utilizzati per il trasporto individuale (modelli a scelta completamente preventiva). Da tali differenze deriva l’esigenza di una sostanziale riformulazione dei modelli di interazione domanda/offerta (assegnazione), per la stima dei flussi sugli archi si una rete di trasporto collettivo. In questa dispensa vengono richiamati i concetti e le ipotesi fondamentali per la simulazione dei sistemi di trasporto collettivo: nel capitolo 2 vengono descritti i modelli d’offerta “a linee” e “a corse”, nonché vengono presentate le funzioni di costo che tipicamente si utilizzano nei sistemi ad alta frequenza; nel capitolo 3 vengono richiamate le ipotesi alla base dei modelli di scelta del percorso per sistemi di trasporto collettivo ad alta frequenza, secondo lo schema comportamentale delle strategie di viaggio (o dell’ipercammino) proposto da Spiess e Florian (1988) e Nguyen e Pallottino (1986) e viene riportata una specificazione di modello di scelta del percorso agli ipercammini; nel capitolo 4 viene descritto infine un algoritmo per l’individuazione dell’ipercammino di minimo costo e per il calcolo dei flussi sulle linee utilizzando un modello deterministico su rete non congestionata (AoN). 2. I MODELLI D’OFFERTA DEI SISTEMI DI TRASPORTO COLLETTIVO In generale, i modelli matematici dell’offerta di trasporto utilizzano la teoria dei grafi e delle reti per rappresentare la struttura topologica e funzionale del sistema. Si definisce rete un grafo ai cui archi è associata una caratteristica quantitativa (si veda l’appendice A). I servizi di trasporto collettivo possono essere rappresentati con dei grafi di tipo diverso a secondo delle caratteristiche del servizio offerto e delle ipotesi che si fanno sui comportamenti di scelta del percorso. Se si tratta di servizi a frequenza elevata (ad esempio con passaggi ogni 5-15 minuti) e bassa regolarità è di solito accettabile l’ipotesi che gli utenti non scelgano la singola corsa, ma piuttosto la 3 linea, ovvero l’insieme di corse che hanno gli stessi capolinea, le stesse fermate intermedie e le stesse prestazioni come nel caso di una linea urbana di autobus o di metropolitana. In questo caso si può utilizzare un grafo “a linee”. Se la frequenza dei servizi è bassa e/o si ritiene accettabile l’ipotesi che gli utenti scelgano le singole corse dei servizi offerti è necessario rappresentare il servizio con un grafo diverso noto come grafo “a corse”. Questo caso si verifica di solito per i servizi di trasporto extraurbano (aereo, treno, bus di linea) che di solito offrono frequenze di servizio basse e puntualità sufficientemente elevata, tali da indurre gli utenti a scegliere le singole corse dei servizi. Il grafo a corse è anche detto diacronico, perché, come vedremo, ai diversi nodi rappresentati sono associate anche delle coordinate temporali. 2.1 Modelli d’offerta “a linee” Un grafo “a linee” è costituito dal sottografo dei servizi di trasporto collettivo che si vogliono modellizzare esplicitamente e dal sottografo di accesso/egresso (A/E) a tali servizi. Il sottografo di accesso/egresso è formato da un insieme di nodi ed archi che consentono di connettere i centroidi spaziali (origine e/o destinazione degli spostamenti) alle fermate e/o terminali di accesso al servizio. In ambito urbano ad esempio il sottografo di A/E è costituito dalla rete delle strade pedonali che consentono di raggiungere le fermate a partire dai centroidi di zona. I servizi di trasporto collettivo sono rappresentati mediante il sottografo delle linee. I nodi di talie sottografo corrispondono ai diversi istanti significativi che si verificano alle fermate (vedi figura 1).: il nodo fermata (o nodo di diversione) rappresenta l’avvenuta decisione dell’utente di utilizzare il trasporto collettivo; i nodi di linea rappresentano i passaggi dei veicoli di una certa linea alla fermata. Gli archi del sottografo delle linee sono classificabili in: Rami di salita: collegano il nodo fermata ai nodi linea e rappresentano l’avvenuta decisione di salire sulla generica linea a servizio della fermata; Rami di linea (o rami a bordo): collegano nodi linea relativi a due fermate successive e rappresentano lo spostamento a bordo dei veicoli della linea di trasporto pubblico che collega le due fermate. Rami di discesa: collegano i nodi linea ai nodi di diversione rappresentano l’avvenuta decisione da parte dell’utente di scendere dal mezzo. 4 Figura 1 - Schematizzazione della fermata nel sottografo delle linee Il grafo globale del trasporto collettivo (vedi figura 2) si ottiene dall’unione dei due sottografi tramite gli elementi di connessione da introdurre alle fermate rappresentati dai Rami di diversione (o di attesa), che collegano un generico nodo della rete pedonale al nodo fermata e rappresentano l’avvenuta decisione degli utenti di salire da una delle linee che servono la fermata. [12,8] [6,8] E [12,8] LEGENDA [6,9] [5,15] [4,15] centroide C A F nodo pedonale nodo pedonale fermata r B G [4,5] [4,4] [4,6] s [4,5] D [,t] [6,6] [10,6] [10,8] [10,5] [5,6] [5,8] [5,5] nodo fermata nodo linea ramo connettore/pedonale ramo attesa-discesa ramo linea =frequenza (bus/h), t=tempo (min) Figura 2 – Grafo globale del trasporto collettivo per linee 5 2.2 Modelli d’offerta “a corse” I grafi “a corse” vengono utilizzati quando è necessario considerare esplicitamente la dipendenza temporale del servizio. Essi sono tipicamente composti da tre diversi sottografi in cui ciascun nodo ha una esplicita coordinata temporale: il sottografo del servizio g; il sottografo della domanda d; un sottografo di accesso/egresso ae . Dato un orario di servizio, nell’approccio per corse ciascuna corsa viene esplicitamente presa in considerazione. Questa può essere descritta con un sottografo g,r in cui i nodi rappresentano gli istanti di arrivo e di partenza alle stazioni e gli archi rappresentano il trasferimento da una stazione ad un’altra oppure la sosta del veicolo (treno, aereo, bus) ad una data stazione. Altri nodi rappresentano l’arrivo dell’utente alla stazione per salire o scendere da ciascuna corsa; questi nodi sono collegati, mediante archi di salita e discesa, con i nodi rappresentativi dell’arrivo e della partenza di quella corsa. L’insieme di questi nodi ed archi è di solito definito come sottografo delle corse. Il sottografo g è ottenuto connettendo tutti i sottografi g,r attraverso rami che rappresentano lo spostamento dell’utente da una corsa alla successive nella stessa fermata (asse fermata o asse stazione). Per simulare le scelte tra le diverse corse o sequenze di corse è necessario effettuare una segmentazione temporale della domanda in funzione dell’istante desiderato di partenza (o di arrivo a destinazione) degli utenti. Tali istanti possono essere rappresentati mediante nodi cui corrisponde una particolare coordinata temporale (o centroidi temporale). Il sottografo di domanda d è costituito, a sua volta, da un numero di sottografi d,c quanti sono i centroidi di zona. Per ciascun centroide spaziale c, il sottografo d,c è composto: da tanti centroidi temporali, tutti situati nella stessa posizione del relativo centroide spaziale c, quanti sono gli istanti desiderati di partenza dall’origine degli utenti; dai nodi rappresentativi della partenza effettiva dall’origine per raggiungere ciascuna stazione; dai nodi rappresentativi dell’arrivo effettivo alla destinazione partendo da ciascuna stazione. 6 Ogni centroide temporale è collegato con i nodi rappresentativi degli istanti di partenza/arrivo effettivo dall’origine/destinazione da archi che rappresentano la durata del periodo di anticipo o ritardo con cui si parte dall’origine rispetto all’istante desiderato di partenza o si arriva in destinazione rispetto all’orario desiderato di arrivo. In figura 3 è rappresentato un grafo diacronico relativo ad un istante di partenza desiderato; grafi analoghi possono essere costruiti per un istante desiderato di arrivo. Arco di attesa Arco di salita Arco di discesa Corsa r Arco di accesso alla stazione A Archi di egresso Partenza dall' origine Arrivo a destinazione Centroide temporale (orario desiderato di partenza) Corsa r-1 Asse temporale stazione B Partenza dall' origine Arco di accesso alla stazione A Asse temporale stazione A Figura 3 – La rappresentazione diacronica per corse nei servizi di trasporto collettivo Il sottografo di accesso/egresso ae è formato da: rami che connettono i nodi di partenza dall’origine ai nodi sul primo asse di fermata a bordo, per rappresentare l’accesso ai servizi; rami che connettono i nodi di discesa dell’asse fermata ai nodi di arrivo a destinazione, per rappresentare l’egresso dal sistema di trasporto collettivo; rami che connettono le fermate, per rappresentare anche possibili interscambi tra diverse fermate. Infine, il grafo diacronico globale è ottenuto attraverso l’unione dei tre sottografi suddetti: = s ae d 7 2.3 Le funzioni di costo Ciascun arco del grafo utilizzato per rappresentare un sistema di trasporto corrisponde ad una fase dello spostamento, cioè la percorrenza di un elemento fisico (ad esempio un tronco stradale) e/o una attività connessa allo spostamento (ad esempio l’attesa di un treno ad una stazione); in entrambi i casi l’“attraversamento” dell’arco è caratterizzato da un tempo di trasferimento e/o da altri oneri sopportati dall’utente. Il costo generalizzato medio di trasporto, o più sinteticamente il costo di trasporto di un arco, è una variabile che sintetizza il valore medio delle diverse voci di costo sopportate dagli utenti così come da loro percepite nella effettuazione delle scelte di trasporto e, più in particolare, nella scelta del percorso. In altri termini il costo di trasporto di un arco riflette la disutilità degli utenti a percorrere l’arco stesso (attraversare l’elemento fisico e/o svolgere l’attività rappresentata dall’arco). Gli elementi che compongono il costo di trasporto sono in generale grandezze non omogenee, per esempio tempo di percorrenza, costo monetario, discomfort. Per ridurre il costo ad un’unica grandezza scalare, a seconda dei casi si può prendere in esame la componente più rilevante per gli utenti, di solito il tempo di trasferimento, oppure omogeneizzare le diverse componenti in un costo generalizzato attraverso l’applicazione di coefficienti di “omogeneizzazione” il cui valore può essere stimato con un modello di scelta del percorso di cui si dirà al capitolo 3. Ad esempio il costo generalizzato di trasporto ci relativo all’arco i-simo può essere formulato in modo elementare come: ci = 1 ti +2 cmi dove ti è il tempo di attraversamento e cmi è il costo monetario (ad esempio il pedaggio) connesso all’attraversamento dell’arco i. In generale il costo, ci è una funzione (tipicamente lineare) degli attributi di prestazione del ramo xik al di sotto delle scelte di percorso (per esempio costo monetario, tempo di accesso, tempo di viaggio a bordo, numero di trasbordi, tempo di egresso, e così via): ci k k xik A causa della congestione, alcuni attributi di prestazione, e quindi il costo medio del ramo, possono dipendere dal numero di utenti sul ramo e, possibilmente, dagli altri rami del grafo. In particolare, riferendosi alla tradizionale rappresentazione delle fermate illustrate in figura 2, per i rami di corsa e discesa, possono essere usate le funzioni di costo separabili come 8 f ci ( f i ) k1 ti k2 i capr k3 in cui fi è il flusso sul ramo i, ti è il suo stesso tempo di viaggio, capr è la capacità della corsa r, rappresentata dal ramo i, e k1>0, k2>0, k3>1, mentre, per i rami salita, è possibile usare funzioni di costo non separabili come fi f j ci ( f i , f j ) k4 f i k5 capr k6 in cui fi è il flusso sul ramo salita i, fj è il flusso sul ramo discesa j, capr è la capacità della corsa r, rappresentata dal ramo i, e k4>0, k5>0, k6>1. In alcuni casi si assume che non vi siano significativi fenomeni di congestione, ovvero che il costo di trasporto sia costante, cioè indipendente dal flusso di utenti che utilizza quello e/o altri archi della rete. Il costo di trasporto può essere espresso da una combinazione lineare delle diverse grandezze (attributi) che lo determinano, ad esempio il tempo ed il costo monetario come nella espressione 2.2.1 oppure da un unico attributo che si ritiene prevalente. Un caso tipico è quello degli archi pedonali il cui costo di solito coincide con il solo tempo di spostamento; di solito si assume che il tempo a piedi sia indipendente dal flusso che utilizza l’arco pedonale1 per cui la funzione di costo dipende solo dalle caratteristiche fisiche e funzionali dell’arco ma non dal flusso che lo utilizza. Ad esempio il tempo può essere calcolato dividendo la lunghezza del segmento (Ll) per la velocità del pedone medio (Vp): clP Ll VP e la velocità può a sua volta dipendere dalle caratteristiche fisiche dell’arco, ad esempio la pendenza. Espressioni analoghe possono essere utilizzate per i costi relativi ad archi a bordo di linee di trasporto collettivo o archi stradali non congestionati. In questi casi le velocità medie possono essere espresse in funzione delle caratteristiche dei veicoli (peso, potenza, ecc.), della infrastruttura (pendenza, raggi di curvatura, ecc.) e delle regole di circolazione per il tronco di infrastruttura e il tipo di servizio rappresentato. Relazioni di questo tipo sono ricavabili sulla base della meccanica della locomozione e per esse si rinvia ai testi specializzati. Talvolta il calcolo delle componenti del 1 Anche per i sistemi pedonali è possibile introdurre fenomeni di congestione e correlare il costo generalizzato di trasporto alla densità pedonale presente su ciascun tronco utilizzando alcune espressioni empiriche riportate in letteratura. 9 costo di trasporto richiede delle ipotesi più sintetiche sul funzionamento del sistema che si intende simulare. Ciò accade, ad esempio, per gli archi di attesa di un sistema di trasporto collettivo rappresentato per linee. In questo caso di solito il costo si assume pari al tempo medio di attesa ovvero al tempo medio che l’utente spende fra l’istante di arrivo alla fermata/stazione e l’istante di arrivo della linea (o delle linee) che intende utilizzare. Nel caso di un’unica linea disponibile con frequenza l (numero passaggi/unità di tempo) il tempo medio di attesa twl, dipenderà dalla regolarità dei passaggi della linea. Si può infatti dimostrare che nell’ipotesi di arrivi con tasso medio costante2 degli utenti (coerente con l’ipotesi di stazionarietà intraperiodale) il tempo medio di attesa vale: twl l dove è pari a 0,5 se la linea è perfettamente regolare, (intervalli fra passaggi successivi costanti e pari a 1/l) a 1 se la linea è “completamente casuale” (gli intervalli fra passaggi successivi sono variabili aleatorie esponenziali negative), vedi figura 2.3.7. Nel caso più complesso di diverse “linee attrattive”, ovvero in cui l’utente attende il primo veicolo che transita appartenente ad un insieme di linee L, il tempo medio di attesa può ancora essere calcolato tramite la (2.3.1) utilizzando la frequenza cumulata L dell’insieme di linee: twl L con L l l L LINEA CON ARRIVI REGOLARI twi t 7:00 7:10 E[twi]= tw=10’/2=5’ 1/=10’ 7:20 LINEA CON ARRIVI CASUALI t 7:00 7:03 E[twi]= tw=10’ 7:20 1/=10’ Istante di arrivo di un autobus alla fermata Istante di arrivo di un utente alla fermata 2 Più in particolare si assume che l’arrivo degli utenti sia un processo di Poisson, ovvero gli intervalli fra due arrivi 10 Figura 3 –Tempo medio di attesa alla fermata. 3. IL MODELLO DI SCELTA DEL PERCORSO AGLI IPERCAMMINI Per la definizione del modello di scelta del percorso, occorre definire innanzitutto le ipotesi comportamentali alla base della generazione delle alternative di scelta e della scelta fra le diverse alternative. 3.1 Classificazione dei comportamenti di scelta Le ipotesi comportamentali dell’utente nella scelta del percorso possono generalmente essere classificate secondo due tipologie di scelta: scelta preventiva (pre-trip), nel caso in cui essa venga effettuata prima di iniziare lo spostamento; scelta adattiva (en-route), nel caso in cui l’utente aggiorna la scelta in funzione di ciò che accade durante il viaggio. Mentre nel caso di sistemi stradali si assume che la scelta sia di tipo completamente preventivo, nel caso di sistemi di trasporto collettivo in ambito urbano la scelta è di tipo misto preventivo/adattivo come viene qui di seguito descritto in maggior dettaglio. Infatti, in una rete di servizi di trasporto collettivo ad alta frequenza, le alternative di scelta non possono essere ottenute per analogia con il caso del trasporto su autovettura, ma sono necessarie ipotesi esplicite e più articolate sui comportamenti degli utenti a causa della diversa struttura di funzionamento dei due sistemi. Infatti, non è possibile ipotizzare che l’utente effettui tutte le sue scelte in modo preventivo prima del viaggio, considerando come alternative i singoli percorsi sulla rete rappresentativa dei servizi, così come per le reti stradali, in quanto (ad esempio) ad una fermata possono essere disponibili più linee che, utilizzando lo stesso percorso, consentono di raggiungere la destinazione in modo equivalente. A titolo di esempio, considerando la rete di figura 4, che rappresenta fermate e linee di figura 2 in modo più schematico, un utente che scegliesse il percorso tra le fermate B-D-G utilizzando le linee 6 e 7, una volta arrivato alla fermata D dovrebbe rifiutare un veicolo della linea 8 che passa prima di uno della linea 7, pur essendo questa del tutto equivalente. successivi sono distribuiti secondo una variabile esponenziale negativa. (v. appendice B). 11 linea 1 =12 bus /h A linea 2 =6 bus /h E linea 3 =5 bus /h C linea 4 =4 bus /h r F linea 5 =4 bus /h B s linea 7 =10 bus /h linea 6 =6 bus /h D linea 8 =5 bus /h G Figura 4 - Esempio di rete di trasporto collettivo. La differenza di base esistente nella trattazione di reti di trasporto collettivo rispetto alle reti di trasporto su autovettura sta nel fatto che occorre prevedere la possibilità che le alternative di scelta considerate da un utente prima di iniziare lo spostamento comprendano più linee “equivalenti”, ovvero più percorsi sul grafo che le rappresenta. Le ipotesi comportamentali alla base delle scelte degli utenti del trasporto collettivo sono qui di seguito descritte. 3.2 Ipotesi comportamentali ed alternative di scelta Alla base della definizione delle alternative di scelta vi è l’ipotesi che l’utente del sistema di trasporto collettivo non possiede all’inizio dello spostamento tutte le informazioni necessarie per poter decidere completamente le modalità dello stesso, in termini di fermate e linee da utilizzare. Ad esempio, non è in grado di prevedere con esattezza il suo istante di arrivo alle varie fermate e/o l’effettivo orario di passaggio degli autobus delle diverse linee alle fermate e quindi, prima di partire, non sceglie un preciso percorso ma piuttosto una strategia di comportamento, individuando un insieme di percorsi “attrattivi” tra i quali sceglie durante il viaggio sulla base di un comportamento adattivo, con l’obiettivo di minimizzare il costo medio dello spostamento. Le decisioni dell’utente sono pertanto riconducibili ad un misto delle due tipologie di scelta, descritte nel par.3.1, così schematizzabili: 12 scelta preventiva dell’insieme dei percorsi attrattivi, definiti dalla stessa prima fermata di salita e dell’insieme di linee che da questa fermata consentono di raggiungere la destinazione; tale scelta viene effettuata all’origine sulla base dell’esperienza effettuata in precedenti viaggi; scelta adattiva della linea alla fermata; tale scelta può essere: + indifferente: cioè l’utente sale sul primo veicolo che arriva di una linea compresa nell’insieme di linee “attrattive” scelto; + intelligente: cioè all’arrivo di un autobus di una linea compresa nell’insieme di linee “attrattive” scelto, l’utente sale sul veicolo se la disutilità media (percepita) del viaggio connessa all’utilizzazione di quella linea è inferiore alla disutilità del viaggio, comprensivo dell’attesa, conseguente all’uso delle linee non ancora arrivate, tenendo anche conto del tempo già trascorso alla fermata. Nel caso di sistemi di trasporto collettivo tradizionali si assume un comportamento di scelta adattivo indifferente, mentre nel caso di sistemi più moderni (per esempio quei sistemi in cui alle fermate sono presenti pannelli che forniscono informazioni in tempo reale sui tempi di attesa delle corse in arrivo) si assume un comportamento adattivo intelligente. Per ulteriori approfondimenti relativi alle ipotesi comportamentali dell’utente in relazione alle caratteristiche del servizio si rimanda alla letteratura specifica del settore. Ipotizzando nel seguito un comportamento di scelta di tipo preventivo dell’insieme di percorsi attrattivi e di tipo adattivo indifferente alle fermate, se si assume che l’arrivo degli utenti e dei veicoli alle fermate siano completamente casuali, cioè che siano processi di Poisson con probabilità uniforme di arrivare in qualunque istante, la probabilità di salire sulla linea l appartenente all’insieme delle linee attrattive alla fermata i, Li, può essere espressa con: prob( l | i , Li ) l / n (3) nLi dove l rappresenta la frequenza (numero di passaggi /unità di tempo) della linea 1. Pertanto resta da analizzare il modo con cui l’utente genera un insieme di percorsi attrattivi, tra i quali sceglie in modo adattivo. Va osservato che, nel caso di comportamento adattivo indifferente, una strategia non garantisce che in ogni viaggio l’utente utilizzi il percorso di minimo costo percepito, ma piuttosto garantisce che sceglie all’interno di un insieme di percorsi che hanno un costo medio percepito inferiore a quello di altri possibili insiemi. Nell’esempio di figura 4 una strategia di viaggio potrebbe essere quella di recarsi alla fermata B e salire sulla prima linea che passa tra la 5 e la 6 e , nel caso di uso della 6, arrivato alla fermata D, salire sul primo veicolo che passa fra quelli appartenenti alle linee 7 e 8; un’altra strategia possibile potrebbe essere quella di recarsi alla fermata A, prendere la linea 1, scendere alla fermata C e prendere la prima linea che passa tra le linee 2,3 e 4. 13 Come già detto, la determinazione dei percorsi attrattivi richiede la definizione delle scelte adattive che si assume avvengano esclusivamente alle fermate e riguardino la decisione di salire su un veicolo di una linea ovvero di attendere un veicolo di un’altra linea appartenente insieme delle linee attrattive Li definito con regole preventive prima di iniziare lo spostamento. Non sono scelte adattive quelle della fermata di salita e di discesa, o scelte del tipo “proseguire su un veicolo di una linea o scendere”, oppure quelle del tipo “restare in attesa alla fermata o recarsi ad un’altra fermata”. Proseguendo nell’esempio relativo alla figura 3 sotto questa ipotesi, insieme di percorsi “attrattivi” non può prevedere di scendere alla fermata C o alla fermata E della linea 1 perché si è assunto che queste siano scelte di tipo preventivo. Per ragioni analoghe un insieme di percorsi “attrattivi” non può prevedere di recarsi alla fermata A per prendere la linea 1 oppure alla fermata B per la linea 6. Sotto le ipotesi di comportamento misto preventivo/adattivo descritte, un insieme di percorsi attrattivi può essere rappresentato sul grafo della rete dei servizi di trasporto collettivo come un sottografo detto ipercammino (per estensione a volte anche l’insieme dei percorsi attrattivi è detto ipercammino). I percorsi elementari sulla rete delle linee, ovvero le sequenze di archi consecutivi che collegano una origine con la destinazione senza cicli, sono definiti ipercammini semplici ed escludono scelte adattive. Per contro, strategie che includono scelte adattive ad una o più fermate generano l’unione di più ipercammini semplici che, per quanto detto in precedenza, devono essere tali che solo da nodi di diversione (vedi figura 1) possono uscire più archi. Tali sottografi prendono il nome di ipercammini composti. Nell’ipotesi che dall’origine r siano accessibili a piedi solo le fermate A e B, in figura 5 sono riportati tutti i possibili ipercammini semplici e composti della rete di linee di figura 4. Ad ogni nodo di diversione i di un ipercammino h quindi corrisponderà un insieme Lih di linee attrattive appartenenti all’ipercammino considerato. Agli archi di salita l=(i,j) che collegano il nodo di diversione i con i nodi j delle linee che appartengono ad Lih è possibile associare una probabilità di diversione, lh, cioè la probabilità di utilizzare la linea corrispondente al nodo j all’interno dell’ipercammino h, data dalla (3): l ,h pl i , j / i , Lih l / n se l h ed l è arco di salita nLih altrimenti l ,h 0 (4) 14 Così ad esempio l’insieme di diversione Li,11 in corrispondenza del nodo di diversione i nell’ipercammino composto 11 di figura 5 è costituito dalle linee 7 e 8: Li,11 = 7,8 e la probabilità di diversione dell’arco (i,j) di salita sulla linea 7 può essere calcolata come: 7,11 = 7/(7+8) = 10 = 0.67 15 15 ipercammini semplici: a,b,c,d,e,f,g ipercammino semplice a (1) W=15 ipercammini composti: a+b,b+c,a+c,a+b+c, e+f,f+g,e+g,e+f+g W= tempo medio di attesa totale qa=1 w=15 w= tempo medio di attesa alla fermata = probabilità di diversione qk= probabilità di scelta del percorso k ipercammino semplice e (5) W=15 ipercammino semplice b (2) W=16 qb=1 w=10 qe=1 w=5 w=10 w=6 ipercammino semplice c (3) W=22 ipercammino semplice f (6) W=17 w=5 w=10 qc=1 qf=1 w=12 w=12 ipercammino semplice d (4) W=15 ipercammino semplice g (7) qd=1 w=10 W=20 w=5 w=5 w=15 qg=1 ipercammino composto e+f (12) W=10.45 =0.54 ipercammino composto a+b (8) =0.4 W=12 w=5 =0.46 qb=0.6 w=6 w=6 =0.6 ipercammino composto a+c (9) W=18 =0.4 qa=0.4 w=5 w=6.66 w=6 =0.6 w=12 =0.44 ipercammino composto e+g (14) W=11 qe=0.6 =0.6 W=14 =0.67 w=10 w=4 qb=0.67 w=5 qc=0.33 w=6 =0.33 =0.4 w=6 w=4 =0.67 Ipercammino composto e+f+g (15) W=9 qa=0.4 qb=0.4 qc=0.2 =0.33 qg=0.4 =0.4 ipercammino composto a+b+c (11) W=10 ipercammino composto f+g (13) W=11.66 =0.56 qf=0.56 qg=0.44 qc=0.6 ipercammino composto b+c (10) =0.6 qf=0.46 w=5.45 qa=0.4 qe=0.54 w=5 w=4 =0.4 qe=0.4 =0.33 qf=0.33 =0.27 qg=0.27 Figura 5 - Enumerazione degli ipercammini per la rete di servizi di fig. 4. 16 Convenzionalmente si assegna una probabilità di diversione uguale a uno agli archi non di salita appartenenti all’ipercammino ed una probabilità nulla agli archi non appartenenti all’ipercammino: l ,h 1 se l h ed l NON E' arco di salita l ,h 0 se l h (5) Sulla base delle probabilità di diversione l,h è possibile calcolare la probabilità qkh di seguire il percorso k all’interno dell’ipercammino h durante un certo viaggio come prodotto delle probabilità di diversione per tutti gli archi l che appartengono al percorso k, cioè: q kh l,h lk q kh 0 se k h (6) altrimenti Tale probabilità vale ovviamente uno se il percorso k coincide con un ipercammino semplice. Procedendo nell’esempio precedente la probabilità qb,11 di seguire il percorso b all’interno dell’ipercammino composto 11 è pari a 0.4 (cioè 0.6x0.67); la probabilità di seguire lo stesso percorso in un altro ipercammino è diversa, ad esempio qb,9 = 0, qb,10 = 0.67 e così via. Si noti che un percorso può appartenere a più di un ipercammino. L’insieme dei possibili ipercammini, all’interno del quale l’utente individua in modo preventivo quello da utilizzare, può essere determinato dal modellista sulla base di due approcci alternativi: l’approccio esaustivo, nel quale vengono considerate ammissibili tutti gli ipercammini possibili; l’approccio selettivo , nel quale vengono considerate ammissibili solo gli ipercammini che soddisfano alcuni criteri di ammissibilità, ad esempio ipercammini che non contengono percorsi con più di un trasbordo, che hanno un costo generalizzato medio non superiore ad un % rispetto a quello di minimo costo, ecc. 3.3 Il modello di scelta fra gli ipercammini Come si è detto, l’utente sceglie l’ipercammino di minimo costo medio percepito e pertanto il modello di scelta viene definito sulla base della teoria dell’utilità casuale per cui l’utente è un decisore razionale che associa ad ogni ipercammino h, appartenente all’insieme Irs degli ipercammini che collegano la coppia (r,s), una utilità percepita dell’ipercammino Uh somma di una utilità sistematica Vh , pari al costo medio dell’ipercammino h , Ch, e di un residuo aleatorio h 17 U h Vh h = -C h + h h I rs (8) scegliendo l’alternativa di massima utilità percepita, ovvero di minimo costo medio percepito. Il costo medio dell’ipercammino Ch è dato da una somma di diverse componenti, di solito omogeneizzate in termini di tempo, quali: tempo pedonale di accesso e di egresso alle/dalle fermate; tempo medio di attesa alle fermate; tempo medio di percorrenza a bordo; tempo medio speso per eventuali trasbordi; numero di eventuali trasbordi; costo tariffario; comfort medio connesso al grado di affollamento. E’ bene notare che alcuni di questi attributi sono valori medi perché sono espressi come media pesata (rispetto alle probabilità d’uso) dei corrispondenti valori relativi ai singoli percorsi appartenenti all’ipercammino. Quindi il costo medio dell’ipercammino Ch può essere espresso come: Ch qkhCk qkh( cl ) k h k h (12) lk dove cl rappresenta il costo del generico arco l. Ad esempio, il tempo medio di attesa Wh associato all’ipercammino h può essere calcolato come: Wh qkh( wlh ) k h (14) lk nella quale i tempi di attesa wlh associati a ciascun arco di attesa sono calcolati tramite la: nLih in se l è arco di diversione wlh altrimenti 0 (13) dove i è il nodo di diversione da cui parte l’arco l, Lih l’insieme delle linee attrattive appartenenti all’ipercammino h, n il generico arco di diversione che esce da i ovvero la generica linea nell’ipercammino h e è un parametro che assume valori compresi nell’intervallo (0,5-1) in funzione delle ipotesi sulla legge degli arrivi degli utenti e dei veicoli (vedi par.2). Infine, il modello di scelta fra le alternative (ipercammini) disponibili può essere espresso in forma generale come la probabilità p(h) che l’ipercammino h sia quello di massima utilità percepita: p( h ) probU h U h' probVh h Vh' h' h' , h I rs (15) 18 Differenti modelli possono essere specificati in funzione delle ipotesi sulla distribuzione dei residui aleatori. Si possono avere quindi modelli di utilità deterministica ( h=0) che assegnano tutta la domanda all’ipercammino di minimo costo generalizzato e modelli di utilità casuale ( h0) di tipo probit con una struttura della matrice varianze-covarianze dei residui simile a quella descritta per i percorsi su reti di trasporto privato su autovettura. Nel caso di reti di trasporto collettivo, l’uso di modelli di utilità casuale di tipo logit è poco accettabile nel caso di ipercammini che possono comprendere una gran quantità di linee in comune (come di solito avviene per le reti tradizionali di trasporto collettivo di città di medie dimensioni), poiché non è ammissibile l’ipotesi di indipendenza delle alternative irrilevanti (IIA) che è alla base dei modelli logit. Infine una volta calcolate le probabilità di scelta degli ipercammini è possibile ottenere la probabilità di scelta del generico percorso k come: p( k / rs ) qkh p( h ) (16) hI rs In tabella 1 vengono riportati i costi Ch dei possibili ipercammini riportati in figura 5, da cui si evince che l’ipercammino di minimo costo deterministico è il n.15 (e+f+g), per cui utilizzando un modello deterministico la probabilità di scelta p(h) di tale ipercammino vale 1, mentre per gli altri vale 0 e quindi le probabilità di scelta dei percorsi valgono rispettivamente qe,15=0.4, qf,15=0.33 e qg,15=0.27. 19 Tabella 1 – Costo deterministico degli ipercammini di fig. 5. Ipercammino linee componenti Tbordo Wh Ch (min) (min) (min) a 5 20 15 35 b 6+7 25 16 41 c 6+8 25 22 47 d 1+2 25 15 40 e 1+2 25 15 40 f 1+3 23 17 40 g 1+4 23 20 43 a+b 5+6+7 23 12 35 a+c 5+6+8 23 18 41 b+c 6+7+8 25 14 39 a+b+c 5+6+7+8 23 10 33 e+f 1+2+3 24.08 10.45 34.53 f+g 1+3+4 23 11.66 34.66 e+g 1+2+4 24.2 11 35.2 e+f+g (*) 1+2+3+4 23.8 9 32.8 (*) ipercammino di minimo costo deterministico. 20 4. LA DETERMINAZIONE DEGLI IPERCAMMINI DI MINIMO COSTO Nel seguito viene trattato il problema della determinazione dell’ipercammino di minimo costo su una rete di trasporto collettivo schematizzata con un modello di offerta del tipo descritto nel par. 2 nelle ipotesi di scelta deterministica fra i possibili ipercammini, individuati secondo i criteri descritti nel par. 3. 4.1 La definizione formale di ipercammino Nel seguito viene riportata la definizione formale di ipercammino, necessaria per l’implementazione degli algoritmi per il calcolo degli ipercammini di minimo costo e, successivamente, per il calcolo dei flussi sulle linee di una rete di trasporto collettivo. Sia G=(N,R) il grafo che schematizza la rete di trasporto, con N insieme dei nodi ed R insieme dei rami; ciascuna linea abbia una frequenza fissa associata all’arco di salita e a ciascun arco sia associato un costo generalizzato connesso all’uso dell’arco stesso che nel seguito si assume non dipendere dal flusso. Data una coppia di centroidi r ed s, è possibile associare all’insieme di percorsi “attrattivi”, all’interno dei quali l’utente si comporta in modo adattivo, un sottografo con delle particolari proprietà che dipendono dalla regola adattiva e dal funzionamento del sistema. Dato un sottografo H(X,E) con X N e E R, si indichi con: EB l’insieme degli archi di salita con EB E EL l’insieme degli archi rappresentanti le linee, con EL E EP l’insieme degli archi pedonali, con EP E Xi+ l’insieme dei nodi collegati al nodo i-esimo da archi uscenti dal nodo i-esimo ed entranti nel nodo j-esimo (Forward Star[i]): Xi+={j/(i,j)E} Xi- l’insieme dei nodi collegati al nodo i-esimo con archi entranti nel nodo i-esimo ed uscenti dal nodo j-esimo (Backward Star[i]): Xi-={j/(j,i)E} ij la frequenza della linea associata all’arco di salita (i,j)EB i la frequenza associata al nodo fermata i B l’insieme dei nodi fermata, B X L l’insieme dei nodi di linea, L X. 21 Ricordando che un un grafo è detto aciclico se è impossibile costruire in esso un percorso che abbia inizio e fine nello stesso nodo, il sottografo H si definisce ipercammino tra i nodi r ed s se: a) H è acicliclo e i nodi r ed s appartengono ad X, ovvero: rX, sX; b) il nodo r non ha predecessori ed s non ha successori, ovvero: Xr-=; Xs+= c) per ogni nodo iX-{r,s} esiste un percorso da r ad s passante per i, ovvero: Xi-; Xi+ iX-{r,s} d) tutti i percorsi hanno lo stesso primo nodo fermata, che ha la proprietà di essere raggiungibile dal centroide r esclusivamente tramite un percorso pedonale; e) non può esistere un nodo di linea che abbia in uscita contemporaneamente un arco di linea e un arco di discesa, ovvero Xi+ è composto da un solo nodo per iL ; f) non può esistere un nodo fermata che ha in uscita contemporaneamente un arco di salita ed un arco di acceso/egresso. Dalle condizioni d), e) ed f) scaturisce che, ad eccezione dei nodi fermata, ogni altro nodo dell’ipercammino ha solo un arco in uscita. Le condizioni d), e) ed f) derivano dalla caratteristica che il comportamento adattivo può riguardare solo scelte tra linee e quindi tra archi di salita; pertanto all’interno di un ipercammino non vi sono percorsi alternativi con primo nodo fermata non coincidente, non si possono porre alternative di scelta del tipo “scendo dall’autobus o continuo a bordo” e, alle fermate di trasbordo, alternative di scelta del tipo “attendo l’autobus a questa fermata o mi reco ad un’altra fermata”. Risulta quindi che un ipercammino H è un sottografo parziale aciclico, con l’origine come unica sorgente e la destinazione come unica foce, i cui nodi di diversione, se ve ne sono, sono nodi fermata; la probabilità d’uso di ciascun percorso all’interno dell’ipercammino è fissato a priori, da cui segue che un percorso appartenente all’ipercammino è univocamente definito da una sequenza di archi di salita (i,j). 4.2 Un algoritmo per il calcolo dell’ipercammino di minimo costo Si pone a questo punto il problema di definire degli algoritmi che consentano di ricavare i flussi derivanti dal modello considerato. Il fondamento teorico dell’algoritmo di seguito utilizzato è il teorema di Bellmann generalizzato; in esso si dimostra che condizione necessaria e sufficiente affinché un ipercammino di destinazione s sia l’ipercammino di minimo costo, è che per ogni nodo i dell’ipercammino si abbia: 22 i, j X i ci c j cij ci ij c j 1 / ' jX i ij jX i' X i' X i se i B se i B (4.1) (4.2) dove ci e cj sono i costi necessari per raggiungere la destinazione s dai nodi i e j con l’ipercammino da loro uscente, cij è il costo costante dell’arco (i,j) e ij è la frequenza associata all’arco di attesa/salita (i,j). La (4.1) è la relazione classica posta a base degli algoritmi di ricerca dei cammini minimi, che va letta tenendo conto che, ragionando in termini di backward star, i costi sono dal generico nodo i alla destinazione. La (4.2) individua il costo medio di percorrenza dell’ipercammino corrente tra il nodo di diversione i e la destinazione, calcolato come somma del tempo medio di attesa, dovuto a tutte le linee inserite nell’ipercammino corrente, pari a: 1/ ij 1 / i (4.3) j X i e del tempo medio di percorrenza ottenuto come media pesata dei tempi di percorrenza dei vari percorsi dalla fermata i alla destinazione, in cui il peso è dato dalla frequenza delle linee relative ai singoli percorsi rispetto alla frequenza cumulata, dato da: c j ( ij / ij ) j X i (4.4) j X i Per procedere alla descrizione degli algoritmi è necessario introdurre la definizione di albero di ipercammini o iperalbero, inteso come insieme di ipercammini tale che vi sia un solo ipercammino da ciascun nodo del grafo alla destinazione comune. Con questa definizione è facile vedere che gli algoritmi per la ricerca dell’iperalbero di minimo costo partono da una rete iniziale modificata mediante l’introduzione di archi fittizi di costo molto elevato che collegano la destinazione s con tutti i nodi. Ad ogni iterazione viene esaminato un nodo j della rete e per tutti gli archi appartenenti alla stella in entrata si esamina l’appartenenza del primo nodo i all’insieme dei nodi fermata B. Nel caso che i non appartenga a B, se l’arco (i,j) non soddisfa la (4.1), cioè si ha: ci > cj + cij (4.5) l’ipercammino sin qui seguito per raggiungere i viene sostituito con quello formato dall’ipercammino fino a j e dall’arco (i,j) ed il costo di i viene aggiornato ponendo: 23 ci = cj + cij. (4.6) Nel caso che i appartenga a B si distinguono due casi: i è stato raggiunto per la prima volta; i è già stato già raggiunto almeno una volta. Se i viene raggiunto per la prima volta si pone la frequenza cumulata del nodo i ij e l’ipercammino costruito sino a j viene connesso con l’arco (i,j), inserendo il nodo j in X i' ed aggiornando il costo secondo la: ci c j 1 ij . (4.7) Nel caso in cui i sia stato già raggiunto si pone i i ij (4.8) X i0 X i' j (4.9) e si verifica se l’arco (i,j) non soddisfi la (4.2), cioè si abbia: ci j X i0 ij c j 1 /i (4.10) in questo caso l’ipercammino da i viene integrato tramite l’arco (i,j) con quello che si diparte da j, si pone X i' X i0 ed il costo viene aggiornato ponendo alla iterazione IT: ci( IT ) ci( IT 1 ) cj ci( IT 1 ) ij ( IT ) i (4.11) che equivale alla (4.2) in forma di eguaglianza, risolta utilizzando il valore di ci(IT - 1) ottenuto alla precedente iterazione. E’ bene notare che nella (4.11) si sono introdotti per comodità gli apici (IT) e (IT-1) per indicare l’iterazione (IT) corrente e la precedente (IT-1) e si sono indicati con c j ed ij il costo e la frequenza da inserire all’iterazione IT ; si ha infatti dalla (4.2): 24 ij c j ci( IT ) j X i(IT ) i( IT ) 1 i( IT ) ij c j j X i(IT 1 ) i( IT 1 ) ij c j j X i(IT 1 ) i( IT 1 ) ij ij c j ij 1 1 ( IT ) ( IT ) ( IT 1 ) 1 ( IT ) i i i i j X i(IT 1 ) i( IT 1 ) i( IT 1 ) i( IT ) ij c j ij c j i( IT ) 1 i( IT 1 ) ed essendo ci( IT 1 ) 1 ( IT 1 ) i c j j X i(IT 1 ) ij c j i( IT 1 ) i( IT 1 ) i( IT ) ij c j j X i(IT 1 ) i( IT 1 ) 1 i( IT 1 ) ij ( IT 1 ) ( IT ) i i 1 si ottiene infine la (4.11). In particolare si deve notare che se risulta ci( IT 1 ) c j bisogna connettere, senza fare alcuna verifica, l’ipercammino che si diparte da j tramite l’arco (i,j), giacché dalla (4.11) si può ricavare che essendo il termine tra parentesi minore di zero ne seguirà che sarà certamente ci( IT ) ci( IT 1 ) . Alla fine di ogni iterazione i nodi per i quali è stato corretto il percorso ed il costo vengono posti in una lista, anche detta serbatoio, dalla quale viene estratto il nodo da esaminare nell’iterazione successiva. Come tutti gli algoritmi di ricerca dei cammini minimi su rete basati sulla disuguaglianza di Bellmann, anche gli algoritmi di ricerca degli ipercammini minimi si differenziano tra loro per il modo in cui viene gestita la lista dei nodi da esaminare. Nel seguito viene proposta una generalizzazione dell’algoritmo di Dijkstra. La implementazione dell’algoritmo di ricerca dell’ipercammino minimo richiede quattro vettori di dimensioni pari al numero dei nodi. Il primo individua il costo ci dell’ipercammino dal nodo i alla destinazione s; il secondo le etichette ei caratterizzanti lo stato del nodo i (0=mai estratto; 1=già estratto; 2=nodo in lista); il terzo vettore indica se il nodo è un nodo fermata o, se non lo è, il nodo successivo verso la destinazione; l’ultimo vettore individua la lista dei nodi da esaminare. Per i nodi fermata sono inoltre necessari tre vettori di cui i primi due vengono gestiti con struttura a stella in uscita: nel primo è indicato il numero corrente di archi di diversione appartenenti all’ipercammino in uscita dal generico nodo fermata e nel secondo per blocchi successivi i nodi finali degli archi in uscita. 25 Il primo vettore indicato con Q(i) individua quindi la numerosità dell’insieme corrente X i' . Il secondo viene indicato con F e nel prosieguo per comodità si indica con F(i) il blocco di nodi degli archi in uscita da i. Il terzo vettore (i) individua la frequenza cumulata corrente associata ad ogni nodo fermata. I passi dell’algoritmo sono riportati in figura 6. step 0 [Inizializzazione] es = 2 cs = 0 pj = s j cj = m (valore elevato) j s ej = 0 j s pj = 888 (identificativo nodo fermata) Q(j) = 0 j B F(j) = 0 j B (j) = 0 j B j B step 1 [Analisi del primo nodo della lista] si estrae il nodo si pone j = L(1) ej = 1 e si scalano di una posizione tutti gli elementi della lista. i X j (cioè per ogni nodo i appartenente alla backward-star del nodo j): step 1.1 se i B e se ci > cj + cij allora pi = j ci = cj + cij step 1.2 se i B e se ci > cj se Q(i) = 0 allora ci c j 1 ij Q(i) = 1 (i)= ij F(i) = j se Q(i) 0 allora 26 (i)= (i)+ ij ci ci c j ci (iji ) Q(i) = Q(i) + 1 F(i) = F(i) { j } step 2 [Riordino della lista] I nodi i per i quali non vengono verificate le condizioni (4.1) e (4.2) sono inseriti nella lista L nella posizione d’ordine corrispondente al loro nuovo costo ci, con etichetta ei=2, invece se erano già presenti vengono riposizionati in modo da avere la lista L ordinata in modo crescente rispetto ai costi ci. step 3 [Test di arresto] Se la lista è vuota l’algoritmo si arresta, in caso contrario si torna allo step 1. Figura 6 – Algoritmo di Dijkstra generalizzato per la ricerca degli ipercammini di minimo costo 27 4.3 Un algoritmo per il calcolo dei flussi Per quanto riguarda il calcolo dei flussi, nel quadro dei modelli deterministici di assegnazione su rete non congestionata nei quali la domanda viene assegnata solo ai percorsi di minimo costo (All or Nothing), è necessario scrivere dei passi di calcolo adeguati per il fatto che nell’ipercammino la domanda va distribuita sugli archi di diversione proporzionalmente alle frequenze delle linee cui si accede. L’algoritmo di calcolo dei flussi parte dalla costruzione di una lista L con i nodi dell’iperalbero di destinazione s posizionati in ordine decrescente di costo; successivamente per ogni nodo j estratto dalla testa della lista viene calcolato il flusso che lo attraversa (dato dalla somma dei flussi presenti sugli archi entranti nel nodo j e dell’eventuale aliquota di domanda in origine dal nodo stesso e diretta alla destinazione s); tale flusso viene distribuito sugli archi uscenti dal nodo j tenendo conto che se il nodo j non è un nodo fermata (jB) si ha un solo arco (per la definizione di ipercammino) e quindi va assegnato tutto il flusso, mentre se il nodo j è un nodo fermata (jB) occorre ripartire il flusso sugli archi uscenti da j in funzione delle frequenze delle linee. L’algoritmo si arresta quando sono stati estratti tutti i nodi della lista L, cioè L=. L’implementazione dell’algoritmo si basa sulle strutture dati costruite per l’individuazione dell’ipercammino di minimo costo, su un vettore D(i) di dimensione pari al numero di nodi, dove nella posizione i-esima è presente la domanda di trasporto tra il nodo i e la destinazione s, e su un vettore f composto dai valori fij dei flussi di utenti sugli archi (i,j). I passi dell’algoritmo di calcolo dei flussi, da utilizzare a valle dell’algoritmo di individuazione dell’ipercammino di minimo costo precedentemente descritto, sono riportati in figura 7. 28 step 0 [Inizializzazione] creazione lista L di nodi j ordinati in modo descrescente rispetto ai costi cj step 1 [analisi del primo nodo della lista] si estrae il nodo j = L(1) e si scalano di una posizione tutti gli elementi della lista. step 1.1 [calcolo del flusso entrante nel nodo j] se D(j) 0 allora Z = D(j) altrimenti Z = 0 i X j Z = Z + fij step 1.2 [calcolo del flusso sugli archi uscenti dal nodo j] k X j se j B allora fjk = fjk + Z se j B allora k F(j) f jk f jk jk ( j ) Z step 2 [Test di arresto] Se la lista è vuota l’algoritmo si arresta, in caso contrario si torna allo step 1. Figura 7 – Algoritmo di calcolo dei flussi sugli ipercammini di minimo costo 29 BIBLIOGRAFIA Cantarella G.E. e Vitetta A. (1999) Stochastic assignment to urban transit networks, Proceedings of 7th EURO Working Group on Transportation, Helsinki, Finland. Cascetta E. (1998) Teoria e metodi dell’ingegneria dei trasporti, UTET, Torino. Ferrari P.(1996) Appunti di Pianificazione dei Trasporti, Servizio Editoriale Universitario, Pisa. Nguyen S. e Pallottino S. (1986) Assegnamento dei passeggeri ad un sistema di linee urbane: determinazione degli ipercammini minimi, Ricerca operativa, n.38. Nuzzolo A. e Russo F. (1997) Modelli per l’analisi e la simulazione dei sistemi di trasporto collettivo, Collana Trasporti, Franco Angeli Editore, Milano. Pratelli A. (1998) Ingegneria dei sistemi di trasporto. Esercizi ed esempi, Lineamenti propedeutici di ingegneria, Pitagora Editrice, Bologna. Spiess H e Florian M. (1989) Optimal strategies:a new assignment model for transit networks, Transportation Research, vol.23 B (2), pp.82-102. 30 APPENDICE A : RICHIAMI DI TEORIA DEI GRAFI E DELLE RETI Un grafo G è costituito da una coppia ordinata di insiemi, un insieme N di elementi detti nodi (o vertici) ed un insieme L di coppie di nodi appartenenti ad N detti archi o rami: G = (N,L). Siano n N ed nL il numero dei nodi (cardinalità di N) e degli archi (cardinalità di L) rispettivamente. I grafi costituiscono un potente strumento di rappresentazione che può essere impiegato per descrivere realtà molto diverse. I nodi costituenti l’insieme N possono individuare i punti di un territorio, le diverse componenti di un sistema o le diverse attività di un viaggio. Un arco sta ad indicare l’esistenza di una relazione di qualsiasi tipo fra la coppia di nodi che lo definisce. Ad esempio, se due nodi sono i punti di un territorio, un arco che li congiunge può rappresentare una strada che li unisce. Si osservi che un grafo costituisce una rappresentazione esclusivamente “topologica”, essa consente unicamente di sapere se fra due qualunque elementi del sistema esiste la relazione che definisce gli archi, ma nessuna informazione quantitativa è associata a tale relazione. Le coppie di nodi possono essere ordinate, cioè la coppia (i,j) è diversa dalla coppia (j,i) nel qual caso l’arco l corrispondente alla coppia di nodi (i,j) si dice orientato o direzionale, oppure le coppie possono essere non ordinate e quindi gli archi non orientati. Un grafo nel quale tutti gli archi sono non orientati si dice non orientato. Un grafo nel quale tutti gli archi sono orientati si dice a sua volta orientato o direzionale. 1 4 1 4 5 5 3 2 3 2 Fig. 1 - Grafo orientato. In un arco orientato il primo nodo della coppia si dice nodo iniziale, il secondo nodo finale. I grafi impiegati per rappresentare i sistemi di trasporto sono sempre orientati. Per individuare compiutamente un grafo è necessario conoscere gli elementi dell’insieme N e le coppie di N che costituiscono l’insieme L. La rappresentazione più immediata è quella grafica (Fig. 1) nella quale i nodi sono individuati con un punto o un cerchio contrassegnato da un numero e gli archi da segmenti che connettono le varie coppie di nodi costituenti l’insieme L. Ogni arco orientato possiede una freccia che indica il verso di orientamento.Le rappresentazioni numeriche di un grafo 31 possono essere matriciali o vettoriali, in esse i nodi dell’insieme N sono di solito indicati con un numero intero. La rappresentazione del grafo più utilizzata nei programmi di calcolo è nota come stella in uscita, o forward star, in cui ad ogni nodo i è associato l’insieme degli archi da esso uscenti, ovvero i nodi finali di tali archi, FWS(i). È ovviamente possibile una analoga rappresentazione del grafo detta backward star (BWS) che richiede esattamente la stessa quantità di dati. La scelta fra le rappresentazioni dipende dall’algoritmo di calcolo dei percorsi minimi che si adotta. In un grafo si definisce percorso, cammino o itinerario una sequenza di archi, nella quale il nodo finale di ciascun arco coincide con il nodo iniziale del successivo. Per esempio nel grafo di Fig. 1 la sequenza (5,1) (1,4) (4,3) è un percorso. Un percorso si dice circuito o loop se il nodo finale del percorso coincide con quello iniziale. Un percorso si dice elementare, o privo di circuiti, se nessuna parte di esso costituisce un circuito, cioè se in esso un nodo non compare mai più di una volta come inizio o fine di un arco. Per esempio nel grafo di Fig. 1 il percorso (5,1) (1,4) (4,3) (3,5) è un circuito; il percorso (2,1) (1,4) (4,3) (3,5) è invece privo di circuiti e quindi elementare. Nel seguito, sarà sottinteso il riferimento a percorsi privi di circuiti. Un grafo in cui ciascun nodo è collegato mediante un arco a ciascun altro nodo si dice completo. I grafi impiegati per rappresentare sistemi di trasporto sono generalmente non completi. Un grafo si dice connesso se ciascun nodo è origine di almeno un percorso che ha come estremo un qualsiasi altro nodo del grafo. Se da un grafo si eliminano alcuni archi si ottiene un grafo detto parziale. Se si eliminano alcuni nodi e gli archi a cui tali nodi appartengono si ottiene un sottografo del grafo dato. Un grafo (in cui non è presente alcun circuito) nel quale esiste un solo percorso che collega un nodo i con ciascun altro nodo si dice albero di radice i. Un albero è un esempio di grafo non connesso in quanto non esistono i percorsi che collegano i diversi nodi con la radice. In un grafo assegnato gli alberi aventi come radice i diversi nodi sono altrettanti esempi di grafi parziali; in generale esistono diversi alberi aventi la stessa radice. A titolo di esempio in Fig. 2 sono riportati alcuni alberi di radice 2 per il grafo di Fig. 1. Il numero di percorsi (privi di circuiti) che possono individuarsi in un grafo è finito. 32 1 4 5 3 2 1 4 1 5 4 5 2 3 2 3 1 4 1 4 5 2 5 3 2 3 Fig. 2- Grafo con alcuni alberi da esso estratti. Nelle reti di trasporto sono rilevanti solamente i percorsi che collegano coppie di nodi nei quali iniziano e terminano degli spostamenti; tali nodi come si è visto nel capitolo 1, vengono denominati centroidi. Per un dato grafo, con un numero prefissato di nodi centroidi, è possibile elencare (o enumerare) tutti i possibili percorsi elementari aventi un centroide come nodo iniziale e nodo terminale. Se o e d sono due centroidi, si indica con Iod l’insieme dei percorsi che collegano o e d, ovvero l’insieme dei percorsi aventi o come nodo iniziale e d come nodo finale. In Fig. 3 è riportato un grafo con i possibili percorsi che connettono i nodi centroidi. Sia nP il numero dei percorsi elementari che collegano le coppie di nodi centroidi. 33 1 4 5 3 2 1 4 1 5 4 5 2 3 2 3 1 4 1 4 5 2 5 3 2 3 Fig. 3 - Grafo con i percorsi elementari fra i nodi centroidi. Una rete è data da un grafo G con grandezze numeriche associate a ciascun arco; per le reti di trasporto tali grandezze numeriche sono i tempi ed i costi connessi allo spostamento(tempi di viaggio, temi di attesa, costo del biglietto, ecc.). Con cij si indica il costo dell’arco individuato dalla coppia di nodi (i,j) e il vettore c, di dimensione (nL 1), che ordina tali costi, è detto vettore dei costi di arco. Alternativamente si può indicare con cl il costo relativo all’arco l individuato dalla coppia di nodi (i,j). 34