Skattning av OD-matriser
Skattning av OD-matriser
Skattning av OD-matriser
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
LINKÖPINGS TEKNISKA HÖGSKOLA<br />
ITN/Jan Lundgren<br />
TNK057 Trafikinformatik 2001-09-28<br />
<strong>Skattning</strong> <strong>av</strong> <strong>OD</strong>-<strong>matriser</strong><br />
I de flesta modeller för nätutläggning antas att efterfrågan (antalet resande)<br />
mellan varje par <strong>av</strong> områden i ett trafiknätverk är given. Denna s k <strong>OD</strong>-matris<br />
(Origin-Destination) utgör en mycket viktig typ <strong>av</strong> indata vid analyser <strong>av</strong><br />
jämviktsproblem och prognoser <strong>av</strong> trafikflöden, och självklart beror kvaliteten<br />
i erhållna lösningar på <strong>OD</strong>-matrisens tillförlitlighet. En viktig problemtyp vid<br />
trafikplanering är därför skattning <strong>av</strong> <strong>OD</strong>-<strong>matriser</strong>.<br />
Ett sätt att erhålla <strong>OD</strong>-<strong>matriser</strong> är via resvaneundersökningar. Ofta är denna<br />
typ <strong>av</strong> undersökningar mycket resurskrävande, både tidsmässigt och kostnadsmässigt,<br />
och det är dessutom inte realistiskt att upprepa undersökningen<br />
så ofta som man skulle vilja. <strong>OD</strong>-matrisen åldras och det finns ett behov <strong>av</strong><br />
att kunna uppdatera matrisen på ett enkelt sätt. Ett sätt är att utnyttja information<br />
om flödet på vissa länkar i nätverket. Denna typ <strong>av</strong> indata fås genom<br />
observationer (mätningar) <strong>av</strong> trafikflöden. Observationer kan göras till en<br />
relativt sett låg kostnad och länkflödena kan uppdateras relativt ofta. De observerade<br />
länkflödena kombineras vanligtvis med informationen i den ”gamla”<br />
<strong>OD</strong>-matrisen som finns tillgänglig. Problemet att skatta en <strong>OD</strong>-matris kan då<br />
tolkas som problemet att uppdatera en <strong>OD</strong>-matris, givet länkdata. Detta problem<br />
kan tolkas som det ”omvända” problemet till nätutläggning. I stället för<br />
att skatta (beräkna) länkflöden givet en <strong>OD</strong>-matris, skattar vi en <strong>OD</strong>-matris<br />
givet länkflöden.<br />
Låt g i beteckna efterfrågan i <strong>OD</strong>-par i. I stället för att använda två index<br />
(för start- respektive målområde ) använder vi bara ett index och numrerar<br />
<strong>OD</strong>-paren löpande. Mängden <strong>av</strong> <strong>OD</strong>-par betecknas med I och det vi söker<br />
är vektorn g = {g i }, i ∈ I, bestående <strong>av</strong> flödet i alla <strong>OD</strong>-par. Vi antar att<br />
en ”gammal” <strong>OD</strong>-matris finns given och vi betecknar den ĝ = {ĝ i }, i ∈ I.<br />
Observerat flöden på länk a betecknas ˆv a , och mängden <strong>av</strong> länkar där vi har<br />
observationer betecknas  och den är en delmängd <strong>av</strong> alla länkar A i nätverket.<br />
Det är orealistiskt att skaffa information från alla länkar. I praktiken kan det<br />
kanske finnas observationer på 5-20 % <strong>av</strong> länkarna. Vi kan uttrycka relationen<br />
mellan observerade länkflöden och sökta <strong>OD</strong>-flöden genom ekvationerna<br />
1
∑<br />
p ia g i = ˆv a , ∀a ∈ Â, (1)<br />
i∈I<br />
där p ia betecknar andelen (proportionen) resande i <strong>OD</strong>-par i som utnyttjar länk<br />
a. Dessa andelar beror på vilka antaganden vi gör om nätverksutläggningen.<br />
För fallet att restiden på en länk ej beror <strong>av</strong> flödet, kan p ia beräknas i förväg och<br />
ekvationerna kan användas direkt vid skattningen. För fallet att nätverksutläggningen<br />
sker enligt principen om användarjämvikt, beror p ia på <strong>OD</strong>-flödet g och<br />
det samband som ekvationerna uttrycker kan inte utnyttjas direkt vid lösning.<br />
Vi söker alltså ett <strong>OD</strong>-flöde som satisfierar samtliga ekvationer (1) ovan. I<br />
praktiken kan två svårigheter uppkomma vid lösning <strong>av</strong> ekvationssystemet.<br />
Systemet är normalt underbestämt, dvs det finns fler variabler (<strong>OD</strong>-par) än<br />
det finns ekvationer (länkar med observationer). Det kan därför inträffa att<br />
det finns många olika <strong>OD</strong>-<strong>matriser</strong> som uppfyller ekvationerna. Det gäller<br />
då att <strong>av</strong>göra vilken matris <strong>av</strong> alla möjliga som är mest sannolik, och det<br />
är i denna beräkning vi har nytta <strong>av</strong> den gamla <strong>OD</strong>-matrisen. Vi kommer<br />
troligtvis också att ha viss inkonsistens i givna länkdata (mätfel mm), och<br />
det kan därmed inträffa att det inte finns någon lösning alls som uppfyller<br />
ekvationerna. Eventuellt kan det finnas ett fåtal tillåtna lösningar<br />
En intuitiv lösningsstrategi är att omväxlande lösa det övre och det nedre problemet.<br />
För någon <strong>OD</strong>-matris görs en nätutläggning för att erhålla länkflöden<br />
samt andelarna p ia . Dessa andelar hålls sedan konstanta i det övre problemet<br />
och en ny <strong>OD</strong>-matris beräknas, och så vidare. Metoden har dock den<br />
begränsningen att den inte garanterat konvergerar och en eventuellt erhållen<br />
lösning är inte ens säkert ett lokalt optimum. En rimlig lösningsstrategi är att<br />
använda en metod som successivt justerar <strong>OD</strong>-matrisen och minskar värdet<br />
på målfunktionen F(g, v). Eftersom länkflödet v är en funktion <strong>av</strong> <strong>OD</strong>-flödet<br />
g kan vi uttrycka problem som<br />
min<br />
g≥0 F(g) = γ 1F 1 (g, ĝ) + γ 2 F 2 (v(g), ˆv)<br />
och lösningsstrategin kan beskrivas enligt följande:<br />
0/ Starta med någon <strong>OD</strong>-matris g (0) , t ex den gamla matrisen ĝ. Sätt k = 0.<br />
1/ Lös optimeringsproblemet som bestämmer en nätverksutläggning enligt<br />
principen om användarjämvikt. Beteckna länkflödeslösningen v (k) .<br />
2/ Beräkna hur (i vilken riktning) <strong>OD</strong>-matrisen ska ändras, dvs bestäm gradienten<br />
<strong>av</strong> F med <strong>av</strong>seende på g i punkten g (k) och beräkna sökriktningen<br />
d (k) .<br />
2
3/ Kontrollera <strong>av</strong>brottskriterier.<br />
4/ Bestäm hur mycket <strong>OD</strong>-matrisen ska förändras, dvs gör en s k linjesökning<br />
i den valda riktningen. Sök α k så att F(g (k) +α k d (k) ) < F(g (k) ).<br />
5/ Sätt g (k+1) = g (k) + α k d (k) och gå till steg 1/.<br />
Det beräkningsmässigt svåra är att bestämma gradienten. För varje <strong>OD</strong>-par<br />
i måste vi beräkna hur flödet på alla länkar a ∈ A påverkas <strong>av</strong> en förändring<br />
<strong>av</strong> flödet i just det <strong>OD</strong>-paret. Om vi har kvadratiska funktioner F 1 och F 2 och<br />
γ 1 = γ 2 = 1 kan vi uttrycka gradientens komponent i som<br />
2<br />
∂F<br />
∂g i<br />
= (g i − ĝ i ) +<br />
Â∑<br />
(v a − ˆv a ) ∂v a<br />
,<br />
a=1<br />
∂g i<br />
där den partiella derivatan ∂va<br />
∂g i<br />
förändring <strong>av</strong> <strong>OD</strong>-flöde i.<br />
uttrycker hur flödet på länk a påverkas <strong>av</strong> en<br />
En approximativ beräkning <strong>av</strong> gradienten fås om vi använder andelarna p ia<br />
från den senaste jämviktslösningen (derivera v a med <strong>av</strong>seende på g i i ekvation<br />
(2)). Antagandet vi då gör är att ökningen <strong>av</strong> <strong>OD</strong>-flödet kommer att fördela sig<br />
mellan använda rutter i samma proportioner som tidigare. En lösningsmetod<br />
baserad på denna approximation ingår i EMME/2 systemet och den har visat<br />
sig fungera bra i praktiken.<br />
Felet som görs vid approximationen <strong>av</strong> gradienten enligt ovan är att ingen<br />
hänsyn tas till restidsfunktionernas utseende. En proportionell ökning <strong>av</strong> flödet<br />
på varje rutt kommer kanse att förändra restiderna på rutterna olika mycket,<br />
dvs flödet uppfyller nu inte längre jämviktantagandet. Dessutom kommer även<br />
restiderna på rutter i andra <strong>OD</strong>-par som använder samma länkar att påverkas.<br />
Det går att beräkna gradienten noggrannare så att hänsyn tas till de förändrade<br />
restiderna på rutterna, men då ökar också beräkningsarbetet betydligt i varje<br />
iteration.<br />
3