I rapporten Framtida verksamhetsvolymer i rättskedjan från januari 2023 presenterar Brottsförebyggande rådet (BRÅ), Polismyndigheten, Åklagarmyndigheten, Sveriges Domstolar och Kriminalvården i samarbete prognoser över inflödet av ärenden med syftet att underlätta för beslutsfattare att dimensionera olika delar av rättsväsendet. Av inflödet till polisen går en del vidare till åklagare, en del till åtal, och så vidare, för de olika delarna av rättsväsendet. Prognoserna baseras på månadsdata med utfall fram till och med december 2022 (helårsdata 2022 var preliminära eller skattade).
Dessa resultat är både av ett allmänintresse och intressanta som ett bra exempel på hur statistik används av myndigheter som ett underlag för planering. Den övergripande trenden avseende verksamhetsvolymer inom rättskedjan är att de förväntas öka under prognosperioden 2023–2026.
Låt mig säga först som sist att jag inte är expert på detta område, och, gärna tar emot synpunkter och förslag.
Prognosmakarna gör prognoserna med hjälp av statistiska modeller för tidsserier. En sådan serie är en rad observationer i kronologisk ordning och ofta gjorda med samma intervall, exempelvis månatligen. Modellerna brukar anta ett enkelt beroende mellan en ny observation och tidigare, och kan ta hänsyn till säsong och trend. Detta beroende uttrycks med hjälp av parametrar som mäter graden av beroende. Genom att skatta dessa parametrar kan statistiker prediktera kommande observationer. En enkel sådan modell skulle kunna bestå av föregående observation, en trendterm och en felterm. Så en ny observation är alltså summan av dessa. En sådan modell är ett exempel på en arima-modell. Förkortningen arima kommer av autoregressive integrated moving average. Just detta exempel är en ARIMA(0, 1, 0) med drift, formellt \(X_{t}-X_{t-1}=c+\varepsilon _{t}\), som säger att skillnaden mellan värdet vid tidpunkterna \(t\) och \(t-1\) är en konstant term plus en felterm. Detta är en slumpvandring med drift.
# läs in data
library(readxl)
library(forecast)
library(ggplot2)
library(tseries)
# inflöde mord, dråp mm.
data <- c(862, 848, 1002, 1024, 950, 966, 1079, 1141, 1180, 1322, 1329, 1512, 1705, 1639, 1687)
misstankar <- ts(data=data, start=2008, end = 2022, frequency=1)
# läs in alla årliga mätningar
brott2022 <- read_excel("E:/PBR/Statistically/data/brott2022.xls", sheet = "annum")
adf.test(misstankar)
##
## Augmented Dickey-Fuller Test
##
## data: misstankar
## Dickey-Fuller = -1.2307, Lag order = 2, p-value = 0.8654
## alternative hypothesis: stationary
kpss.test(misstankar)
##
## KPSS Test for Level Stationarity
##
## data: misstankar
## KPSS Level = 0.57448, Truncation lag parameter = 2, p-value = 0.02496
När det gäller mord och dråp med mera, så är trenden stigande. Myndigheten använder här Winters additiva modell, som säger att en ny observation är summan av ett medelvärde, en trend och en säsongsterm. Rapporten förutspår en viss ökning (12% 2022-2026) de närmaste åren.
För att förenkla data använde jag i stället årliga data, med nedanstående resultat. Jag använde mig av en procedur som automatiskt sökte i en rymd av möjliga modeller och valde den bästa baserat på Akaikes informationskriterium (AIC), och det blev ARIMA(0,1,0). I grafen ser du också prediktionsintervall som visar osäkerheten i prognosen (nivåerna är 20% och 5%) under förutsättning att modellen är korrekt. Två statistiska test (Dickey-Fuller och KPSS) indikerar att tidsserien uppvisar en trend.
Detaljer: AIC mäter anpassningen till data, men ger ett straff för antalet skattade parametrar. Detta ska förhindra överanpassning (overfitting) till data, se exempelvis boken Statistiskt sett. I detta fall gäller AIC = 2 x (-Log-likelihood+antalet skattade parametrar [här 2: drift och varians])=2 x 81.78752 + 4 = 167.575
# visa autokorrelation
acf(misstankar,main="Autokorrelation inflöde mord, dråp mm.")
misstankar.ar <- auto.arima(misstankar)
aic1 <- AIC(misstankar.ar)
aic1
## [1] 167.575
# prognos tre år framåt
misstankar.p <- forecast(misstankar.ar, h=3)
autoplot(misstankar.p, ylim=c(0,3000), main="Prognos av ARIMA(0,1,0) med drift", ylab="Inflöde mord, dråp mm.")
Autokorrelationen, dvs korrelationen mellan observationer och deras föregångare, kan ge en uppfattning om hur många tidigare observationer (laggar) som kan bidra med användbar information. Jag kommer inte att fullfölja det resonemanget här, men konstaterar bara att korrelationen mellan en observation och två föregående är större än 0.5, se grafen.
Däremot är trenden avtagande när det gäller skadegörelse. Dock ger inte historiska data någon tillförlitlig information om den framtida utvecklingen. Exempelvis är antalet anmälningar i Stockholm beroende av när SL kraftsamlar mot skadegörelse och klotter och det sker både oregelbundet och ibland i stora volymer. Det är sannolikt därför man använder en konstant modell. Detta exempel visar hur viktigt det är att ha domänkunskap, det vill säga kunskap om det specifika området som statistiken ska tillämpas på.
# välj ut Skadegörelse i kolumn 10
skade <- brott2022[,10]
skade_miss <- ts(data = skade[,1], start=2008, end = 2022, frequency=1)
skade.ar <- auto.arima(skade_miss)
# prognos tre år framåt
skade.p <- forecast(skade.ar, h=3)
autoplot(skade.p, ylim=c(0,8000), main="Prognos av ARIMA(0,1,0) med drift", ylab="Inflöde skadegörelse")
Johanna Olseryd på BRÅ ska ha tack för att ha svarat på mina frågor och kommenterat.