Kari Andersen, prosjektleder i et norsk ingeniørselskap i Bergen, trengte å estimere risikoen for kostnadsoverskridelse på et 15 MNOK infrastrukturprosjekt. Med Monte Carlo i Excel gjennomførte hun 10 000 simuleringer på 20 minutter — og fikk et konfidensintervall som overbeviste styret om å øke reservene med 8 %.
Monte Carlo-simulering er standard i norsk olje- og energisektor. Equinor bruker P10/P50/P90-estimater i alle reservoarvurderinger. Den gode nyheten: den samme metodikken er fullt mulig å implementere i Excel, uten lisenskostnad og uten tilleggsprogramvare.
Denne veiledningen tar deg gjennom hele prosessen — fra å definere usikre variabler til å lese av konfidensintervaller fra histogrammet.
Hva er Monte Carlo-simulering — og hvem bruker det?
Grunnprinsippet er å erstatte usikre innsatsverdier med sannsynlighetsfordelinger, og deretter prøvetrekke fra disse fordelingene tusenvis av ganger. Hvert trekk gir ett mulig utfall. Summen av alle utfall gir en distribusjon — ikke et tall.
I norsk kontekst er Monte Carlo særlig utbredt i Equinor og leverandørkjeden for reservoarestimering, i Statsbygg for kostnadsusikkerhet i byggeprosjekter, og i banker og forsikringsselskaper for kredittrisikomodellering.
P10, P50 og P90 betyr henholdsvis: det optimistiske scenariet (bare 10 % sjanse for å havne lavere), det forventede utfallet (medianen), og det pessimistiske scenariet (bare 10 % sjanse for å havne høyere). Disse tre tallene oppsummerer hele simuleringen i et format styret kjenner igjen.
Steg 1: Definer usikre variabler og velg fordeling
Identifiser hvilke innsatsfaktorer i modellen din som er genuint usikre. For hvert slikt element definerer du en fordeling — ikke ett enkelt tall.
-
Sett opp antagelsestabellen
Eksempel fra et byggeprosjekt: Materialkostnad (min 800 000 kr, maks 1 200 000 kr, mest sannsynlig 950 000 kr). Arbeidstimer (min 1 200 h, maks 2 000 h, mest sannsynlig 1 500 h). Hold tabellen til 3–8 variabler — mer enn det gir sjelden vesentlig bedre presisjon.
-
Velg riktig fordeling
Jevn fordeling (alle verdier like sannsynlige): enklest, men sjelden realistisk. Triangulær fordeling (tyngde rundt «mest sannsynlig»): god for kostnadsestimering. Normalfordeling: passer når variabelen er summen av mange uavhengige faktorer.
Steg 2–3: Sett opp simuleringen og kjør 1 000 iterasjoner
Med antagelsestabellen klar er neste steg å koble den til en resultatformel og kjøre iterasjonene via Excels Datatabell.
-
Bygg resultatligningen
Lag en formel som kombinerer de usikre variablene til ett totalt utfall — for eksempel: total prosjektkostnad = materialkostnad + (arbeidstimer × timepris) + fast overhead. Sørg for at formelen refererer til cellene i antagelsestabellen.
-
Kjør Datatabellen
Skriv tallene 1–1 000 i kolonne A. I celle B1: skriv en referanse til resultatcellen. Merk A1:B1001. Velg Data → Hva-om-analyse → Datatabell. La Radinndata stå tom. Klikk OK — Excel genererer 1 000 simuleringer automatisk.
Steg 4: Analyser resultatene
Med 1 000 utfall i kolonne B kan du beregne P10, P50 og P90 direkte:
Eksempelresultater — infrastrukturprosjekt (NOK)
| Estimat | Beløp (NOK) | Tolkning |
|---|---|---|
| P10 | 12 400 000 | Optimistisk — 10 % sjanse for å havne lavere |
| P50 | 15 200 000 | Forventet medianverdi |
| P90 | 18 900 000 | Pessimistisk — 10 % sjanse for å overskride |
| Gjennomsnitt | 15 450 000 | Forventet verdi over alle simuleringer |
For å visualisere: bruk =FREKVENS(B2:B1001;intervaller) som matriseformel (Ctrl+Skift+Enter) og lag et stolpediagram på frekvenstallene.
Steg 5: Avanserte teknikker
Grunnmodellen er nok for de fleste prosjekter, men to utvidelser er verdt å kjenne til:
- Korrelasjonsmodellering: Hvis materialpris og arbeidskostnader tenderer å stige sammen, gir uavhengig simulering falsk optimisme i halen av distribusjonen. Én enkel tilnærming er å bruke én felles slumpcelle som driver begge variablene i samme retning.
- @RISK vs. ren Excel: Palisade @RISK og Oracle Crystal Ball er industristandard når du har >10 korrelerte variabler, trenger Tornado-diagrammer for sensitivitetsrangering, eller vil dokumentere metodikk for revisorer. For de fleste prosjektøkonomiske analyser er ren Excel tilstrekkelig.
Vanlige feil og beste praksis
- For få iterasjoner: Under 500 gir ustabile P10/P90-verdier. Bruk 1 000 minimum, 10 000 for formelle analyser.
- Feil fordeling: Jevn fordeling passer sjelden. Triangulær eller PERT er mer realistisk for kostnadsvariabler.
- Glemmer korrelasjon: Se punkt om avanserte teknikker over.
- Mistolker konfidensintervallet: P10–P90 betyr ikke at utfallet er garantert innenfor dette intervallet — det betyr at 80 % av simuleringene havnet der.
Vanlige spørsmål
Trenger jeg VBA for Monte Carlo i Excel?
Nei. Excels innebygde Datatabell (Data → Hva-om-analyse) kjører hundrevis eller tusenvis av iterasjoner uten en linje VBA. VBA er bare nødvendig hvis du vil automatisere gjentatte kjøringer, lagre resultater mellom sesjonene, eller koble simuleringen til eksterne datakilder.
Hva betyr P10, P50, P90?
P10 betyr at 10 % av simuleringene ga et lavere resultat (optimistisk), P50 er medianen, og P90 betyr at 90 % av simuleringene ga et lavere resultat (pessimistisk). I Equinor-sjargong: P10 = «High case», P50 = «Base case», P90 = «Low case» for ressursestimering.
Kan Monte Carlo brukes til boliginvesteringsanalyse?
Ja — Monte Carlo egner seg godt for å modellere usikkerheten i leieinntekter, vedlikeholdskostnader og boligprisutvikling. Du definerer fordelinger for hver usikker faktor, kjører 1 000 simuleringer og leser av sannsynligheten for positiv avkastning etter f.eks. 10 år. Husk at historiske data for boligmarkedet ikke garanterer fremtidige resultater.
Hva er forskjellen mellom Monte Carlo og scenarioanalyse?
Scenarioanalyse bruker et begrenset antall forhåndsdefinerte scenarior (f.eks. best/base/worst) og gir tre diskrete svar. Monte Carlo simulerer tusenvis av tilfeldige kombinasjoner av innsatsverdier og gir en kontinuerlig distribusjon. Monte Carlo er mer informativ, men krever at du spesifiserer fordelinger — ikke bare enkeltpunktestimater.