Planering av Räddningssystem Fö 5: Modellering av indata Tobias Andersson
Diskussionsuppgift Designa ett räddningssystem för området. + Diskutera behov, och hur dessa kan förutsägas. Vilken data behövs? Prata med grannen eller bilda små grupper. + 2
1 antal personer som hör till nod 2 = d 2 2 3 t 34 = förväntad körtid mellan nod 3 och 4 4 16 7 8 9 5 6 10 11 12 13 14 15 2017-01-30 TNSL13 3
Indata 1 Simonstorp 1-3732 2 Svärtinge 2 27,9-2488 3 Åby 3 14,6 11,8-13685 4 Krokek 4 14-4976 5 Såpkullen 5 14,3 11,3-39811 6 Lindö 6 6,7-13933 7 Vånga 7-3483 8 Skärblacka 8 7,4-10077 9 Klockaretorpet 9 3,9 15,6-14929 10 Ljunga 10 7,6-2861 11 Östra Husby 11 47,2 16,2-3981 12 Öbonäs 12 7,3 12,1 9,9 14,4-2985 13 Kuddby 13 13,4 8,9-1741 14 Bäckeby 14 22,6 15,5 20,3 22,7-3110 15 Rönö 15 22,3 23,9-2612 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 124404 Nod Namn Vägmatris Befolkning 2017-01-30 TNSL13 4
Fullständig avståndsmatris 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 0 26,4 14,6 28,6 25,9 32,6 52,8 45,4 29,8 40,2 56,4 33,2 53,6 50,1 77,5 2 26,4 0 11,8 25,8 14,3 21 41,2 33,8 18,2 28,6 44,8 21,6 42 38,5 65,9 3 14,6 11,8 0 14 11,3 18 38,2 30,8 15,2 25,6 41,8 18,6 39 35,5 62,9 4 28,6 25,8 14 0 25,3 32 52,2 44,8 29,2 39,6 47,2 32,6 53 49,5 69,5 5 25,9 14,3 11,3 25,3 0 6,7 26,9 19,5 3,9 14,3 30,5 7,3 27,7 24,2 51,6 6 32,6 21 18 32 6,7 0 33,6 26,2 10,6 7,6 23,8 12,1 21 30,9 44,9 7 52,8 41,2 38,2 52,2 26,9 33,6 0 7,4 23 41,2 57,4 32,9 54,6 22,6 78,5 8 45,4 33,8 30,8 44,8 19,5 26,2 7,4 0 15,6 33,8 50 25,5 47,2 15,5 71,1 9 29,8 18,2 15,2 29,2 3,9 10,6 23 15,6 0 18,2 34,4 9,9 31,6 20,3 55,5 10 40,2 28,6 25,6 39,6 14,3 7,6 41,2 33,8 18,2 0 16,2 14,4 13,4 37,1 37,3 11 56,4 44,8 41,8 47,2 30,5 23,8 57,4 50 34,4 16,2 0 30,6 8,9 53,3 22,3 12 33,2 21,6 18,6 32,6 7,3 12,1 32,9 25,5 9,9 14,4 30,6 0 27,8 22,7 51,7 13 53,6 42 39 53 27,7 21 54,6 47,2 31,6 13,4 8,9 27,8 0 50,5 23,9 14 50,1 38,5 35,5 49,5 24,2 30,9 22,6 15,5 20,3 37,1 53,3 22,7 50,5 0 74,4 15 77,5 65,9 62,9 69,5 51,6 44,9 78,5 71,1 55,5 37,3 22,3 51,7 23,9 74,4 0 2017-01-30 TNSL13 5
Avstånd -> insatstid? T ( D) = 1/ 2( D / a) vc / a + D / 2 v c om om D D > 2d 2d c c T(D) är körtiden, a accelerationen, D sträckan, d c hur lång sträcka som måste köras innan marschfart erhållits och v c är marschhastigheten. Anspänningstid? Källa: Kolesar 1975 2017-01-30 TNSL13 6
Körtider från vägdatabaser Nationella vägdatabasen (NVDB) https://nvdb2012.trafikverket.se/ Open street map (OSM) http://www.openstreetmap.org/#map=13/58.5 980/16.1526 Vägnät Består av noder och länkar Varje länk har ett antal attribut 7
NVDB Bärighet Driftområde Funktionell vägklass Hastighetsgräns Mittbarriär Slitlager Viltstängsel Vägbredd Väghållare Vägkategori Vägnummer Vägtrafiknät Vägtyp Väglänksattribut Vilka attribut påverkar hur lång tid det tar att åka på länken? Och hur beräknar man körtiden? Och vilka andra faktorer kan påverka? OSM osm_id name ref type primary secondary motorway motorway_link path cycleway oneway bridge tunnel maxspeed 8
9
10
Anslutning till vägnätet från start/slutpunkt Kortaste vägberäkning 11
Kortaste väg Lättlöst optimeringsproblem Dijkstra's, Bellman Ford, A*, Men om vägnäten är stora tar det ändå lång tid Förbehandling kan minska lösningstiden, tex När långa sträckor ska beräknas, ta bort småvägar (spara dem bara runt start- och målnoden) Lägg till långa länkar som tar lika lång tid som kortaste vägen mellan två noder 12
Körtidsmatriser Ska man lösa opt-problem, har man typiskt inte tid att vänta på kortastevägberäkningarna Skapa i stället en körtidmatris Förberäkna körtiden från en mängd punkter till alla andra punkter Går fort att slå upp körtiden Tar ganska mycket plats i minnet Kan tex göras i ArcMap, network analyst New OD cost matrix 13
Blåljusspecifika körtider Kan köra på vissa vägar där man annars inte får köra Gång/Cykelvägar Enkelriktat Får överskrida maxhastigheten vid blåljuskörning Men inte vid mindre akuta uppdrag Räddningstjänsten har ofta stora, tunga fordon Kan vara långsamma och osmidiga 14
Uppgift 3 Skapa ett validerat Network Dataset för det valda länet. Utgå från kartlagda resurser i uppgift 1 och skapa Service Areas med hjälp av Network Analyst (en funktion i ArcMap). Importera och visualisera brandprognosen. Prognos över ambulansuppdrag Importera och visualisera befolkningsdata. Skapa en enkel prognos för förväntat antal ambulansuppdrag i ert län under nästa år. Fördela ut totalprognosen över länet baserat på befolkningsdata. Skapa en matris med körtider från resurser till ovanstående prognospunkter (med hjälp av OD-matrix, Closest Facility eller Location-Allocation). Baserat på körtiderna och prognosvärdena, beräkna medelinsatstid och en valfri täckningsgrad. 15
Behov - prognoser 16
Källor Delar av materialet till denna föreläsning är hämtat från: Magnusson, E., Ambulanslogistik - prognostisering av ambulansuppdrag, Examensarbete, LITH-ITN-KTS 07/009--SE Edlund, Högberg, Leonardz: Beslutsmodeller redskap för ekonomisk argumentation Jaldell: Förväntat antal bränder Andersson, T. & Gustafsson, A. (2010) Lokalisering av räddningstjänstresurser i Östergötland. CARER Rapport 2010:3, Linköping University Electronic Press, Sweden. 17
Prognoser Prognosis (gr) betyder förutsägelse En prognos kan vara Värdet på en variabel vid en viss tidpunkt Tidpunkten för en händelse Resultatet av en händelse Syfte Organisera och analysera befintlig kunskap så att osäkerheten i en beslutssituation minskar Resurser Reduktionen i osäkerhet är vanligen proportionell mot kostnaden för prognosen Förlust pga osäkerhet måste vägas mot kostnaden för prognosen 18
Prognosmodeller Kvalitativa modeller Bygger på åsikter och bedömningar (från experter) Långsiktiga prognoser Historisk data saknas Kvantitativa modeller Matematiska Historisk data används Extrapolering av historiska värden Kausala modeller Tidsseriemodeller 19
Efterfrågemodell Man skiljer ibland på efterfrågemodell och prognosmetod Efterfrågemodellen är en beskrivning av den process som genererar efterfrågan Efterfrågemodellen skattas av historisk data Prognosmetoden baseras på efterfrågemodellen Innan man väljer prognosmetod bör man ha skaffat sig en god uppfattning om hur efterfrågan historiskt sett ut 20
Metodik Visualisering/analys av historisk data -> efterfrågemodell Val av prognosmetod baserat på efterfrågemodellen Validering av prognosmodellen 21
Analys av historisk data Plotta data Tex i Excel, Matlab, etc Aggregera på olika tidsintervall för att hitta olika effekter Antal händelser per månad Antal händelser per dag Antal händelser per timme Bestäm vilka faktorer som ska ingå i prognosen 22
Antal uppdrag per dag 140 Summa av Antal 120 100 80 60 Totalt Linjär (Totalt) 40 20 0 Datum Källa: Magnusson, 2007 23
Antal uppdrag per månad 2500 Summa av Antal 2000 1500 Totalt 1000 500 0 1 2 3 4 5 6 7 8 9 10 11 12 Månad Källa: Magnusson, 2007 24
Antal uppdrag per veckodag 3600 Summa av Antal 3500 3400 3300 3200 3100 Totalt 3000 2900 2800 2700 2600 Måndag Tisdag Onsdag Torsdag Fredag Lördag Söndag Källa: Magnusson, 2007 Veckodag 25
250 Summa av Antal 200 150 100 Veckodag Måndag Tisdag Onsdag Torsdag Fredag Lördag Söndag 50 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 Källa: Magnusson, 2007 Timme 26
Metodik Visualisering/analys av historisk data -> efterfrågemodell Val av prognosmetod baserat på efterfrågemodellen Validering av prognosmodellen 27
Faktorer vid prognosmodellval Tidshorisont Kortsiktiga (max 1 år) Medellånga (5-10 år) Långsiktiga (20 år och framåt) Långa tidshorisont ger större osäkerhet och mindre nytta av historiska data Datamönster T (Trend) K (Konjunktur) S (Säsong) ε (Slumpterm) Impulser (tillfälliga effekter) Nivåförändringar Trendbrott 28
Kvantitativa prognosmetoder Naiva modeller Imorgon = idag (+trend, +säsong) Utjämningsmodeller Glidande medelvärde Exponetiell utjämning (+ trend, +säsong) Komponent-uppdelningsmodeller trend, säsong, konjunktur, etc.) Regressionsmodeller 29
Metodik Visualisering/analys av historisk data -> efterfrågemodell Val av prognosmetod baserat på efterfrågemodellen Validering av prognosmodellen 30
Utvärdering av prognoser Prognosfel Slumpmässiga Medelvärdet nära noll Systematiska Medelvärde skiljt från noll Noggrannhet: överensstämmelse mot korrekt värde Precision: graden av variation Prognosfel beror på Mätfel Slumpmässig variation Felaktig prognosmodell Ändrade förutsättningar 31
Mått på prognosfel Medelkvadratfelet: MSE = sum(e 2 )/ n Bestraffar stora avvikelser hårt Medelfelet: ME = sum(e)/n Bör vara nära noll om inte systematiskt fel Medelabsolutfelet: MAE = sum( e )/n Bestraffar inte stora avvikelser lika hårt som MSE 32
Valideringsmetodik Om tillräckligt med data finns Dela upp data i två mängder En kalibreringsmängd En valideringsmängd Kalibreringsmängden kan vara större än valideringsmängden Analysera först hela mängden för att välja rätt modell Kalibrera (bestäm värden på parametrar i modellen) modellen, enbart baserat på kalibreringsmängdens data Validera modellen med valideringsmängdens data Om en systemförändring skett (tex en ny väg har tillkommit) fungerar inte detta 33
Valideringsmetoder Beräkna prognos, jämför mot faktiskt utfall Beräkna medelfel, medelabsolutfel, etc Kontrollera grafer, kartor, etc visuellt för att kolla så att prognosen ser vettig ut Låt experter bedöma prognosen Hitta förklaringar för eventuella avvikelser Känslighetsanalys Hur mycket varierar prognosen om indata varieras? Hur påverkas beslut som ska baseras på prognosen, beroende på hur prognosen ser ut? Hur vet man om den är valid? Går inte att säga i det enskilda fallet Den behöver inte stämma perfekt, så länge den kan anses användbar I slutändan måste en subjektiv bedömning göras, i bästa fall av flera systemexperter som är ense 34
Metodik Visualisering/analys av historisk data -> efterfrågemodell Val av prognosmetod baserat på efterfrågemodellen Validering av prognosmodellen 35
Prognostisering av bränder Modell för förväntat antal bränder i bostad för Sverige indelat i 1 km-rutor Fem steg: 1. Antag att antalet bränder kan förklaras av ett antal förklaringsvariabler, bla byggnadstyper, befolkning, socioekonomiska förhållanden (156 variabler) 2. Reducera antalet förklarande variabler mha faktoranalys 3. Hitta statistiska samband mellan den beroende variabeln och de oberoende (förklarande) variablerna mha regressionsanalys 4. Beräkna ett förväntat värde för den beroende variabeln mha modellen 36
Variabler i prognosen Vilka förklaringsvariabler borde vara med? Antal av olika byggnadstyper Byggnadsålder Befolkningsantal och åldersstruktur Tätort vs landsbygd Antal sysselsatta i olika branscher Utländsk bakgrund Familjetyp Utbildningsnivå Arbetslöshet Inkomstnivå Ohälsa Turism Hur hittar man data? 37
Variabeldata Oberoende variabler Statistiska centralbyrån (SCB) Fastighetsregistret Beroende variabel Insatsstatistik (tex från MSB - http://ida.msb.se) 1998-2006 Koordinatsatt och fördelad på 1km-rutor Bortfall Ej koordinatsatta Ej elektroniska insatsrapporter Inte speciellt stort Rensning 536 247 st rutor totalt i Sverige 16 073 hade en brand i bostad Ta bort alla rutor där det inte bor någon -> 114 826 rutor Missar fritidshus! 38
Reduktion av antal förklaringsvariabler Variabler som är starkt korrelerade med andra kan tas bort Faktoranalys gjordes med proceduren Varclus i programmet SAS (Statistical Analysis System) Bostadsbyggnadsvariabler: 23 var -> 4 Antal lägenheter, antal rad-par-kedjehus, antal friliggande småhus, antal bostadsrätter Befolknings- och familjedata: 52 var -> 3 Total befolkning, befolkning i åldern 0-19 år, antal födda utanför Norden Arbetslöshets-, utb-, inkomst- och ohälsodata: 81 var -> 4: Antal ohälsodagar, antal eftergymnasialt utbildade, antal arbetslösa, antal grundskole- och gymnasieutbildade 39
Regressionsanalys Linjär OLS-modell (ordinary least squares) Kvadrerad totalbefolkning ger bättre modell! Varför? Variabel Antal lägenheter 0.00527 Antal småhus 0.00839 Antal bostadsrätter -0.00362 Total befolkning i kvadrat 0.000111 Antal födda utanför Norden 0.0160 Antal eftergymnasialt utb -0.00195 Parameterestimat 40
Beräkning av prognos För varje 1km-ruta beräknas ett förväntat värde Determinationskoefficienten R 2 = 0.87 Observera att modellen baseras på nationell data Lokala variationer förekommer 41
Validering av brandprognos för Östergötland 42
Validering av brandprognos för Östergötland 43
Validering av brandprognos för Östergötland 44
Validering av brandprognos för Östergötland 45
Validering av brandprognos för Östergötland Medelabsolutfelet är ca 0,5 olyckor per område och år, Medelutfallet (historiskt) per område och år är ca 1,2 Prognostiserat antal brand i bostad är i snitt ca 1,2 olyckor per område och år Korrelationen mellan historiska och prognostiserade värden beräknas till 0,62, vilket tyder på att det finns ett positivt samband mellan prognosen och det historiska utfallet, om dock något svagt. Författarnas slutsats blir att prognosmodellerna är tillräckligt bra för det avsedda syftet. Detta på grund av den positiva korrelation som kan påvisas med historisk data, men också på grund av avsaknaden av bättre alternativ. 46
Prognostisering av ambulansuppdrag Kombination av olika metoder Data Koordinatsatta uppdrag av olika prio Dag och nattbefolkning Problem: data för små områden blir osäkert Lösning: gör först en prognos för ett större område och dela sedan upp den på mindre Gör en prognos för hela länet som förutsäger antal uppdrag per timme Fördela uppdragen geografiskt efter befolkningen Svagheter? 47
Prognos för ambulansuppdrag i ett län Identifiera ev trender, säsonger, etc. 48
p1+p2 120 100 80 60 40 Måndag Tisdag Onsdag Torsdag Fredag Lördag Söndag 20 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 timme 49
Prognos för ambulansuppdrag i ett län Identifiera ev trender, säsonger, etc. Bestäm metod Tillämpa metod Tex: y t = prognos för antal Prio 1 uppdrag tidsindex t i är en viss timme en viss dag i veckan, tex 11-12 en tisdag Det totala antalet uppdrag måste fördelas 50
Geografisk fördelning av Prio 1 uppdrag Låt d i = dagbefolkning i zon i Låt n i = nattbefolkning i zon i Låt P = total befolkning i länet Låt u1 it = förväntat antal Prio 1 uppdrag i zon i tid t. Antag att dag är 7-18, natt 18-7 Om t ligger under dag u1 it = d i * y t / P Om t ligger under natt u1 it = n i * y t / P 51
Uppgift 3 Skapa ett validerat Network Dataset för det valda länet. Utgå från kartlagda resurser i uppgift 1 och skapa Service Areas med hjälp av Network Analyst (en funktion i ArcMap). Importera och visualisera brandprognosen. Prognos över ambulansuppdrag Importera och visualisera befolkningsdata. Skapa en enkel prognos för förväntat antal ambulansuppdrag i ert län under nästa år. Fördela ut totalprognosen över länet baserat på befolkningsdata. Skapa en matris med körtider från resurser till ovanstående prognospunkter (med hjälp av OD-matrix, Closest Facility eller Location-Allocation). Baserat på körtiderna och prognosvärdena, beräkna medelinsatstid och en valfri täckningsgrad. 52