Plan för experiment

Problem med att erhålla korrekta simuleringsresultat

Innan vi börjar behöver vi välja en passande tid för när en modell ska vara redo att använda. Många simuleringar börjar från och återgår till ett tomt tillstånd. De flesta serviceinrättningar öppnar och stänger till exempel varje dag utan att några kunder är närvarande. Det finns dock situationer då villkoret "tomt" inte är en realistisk startpunkt. Om en veckas produktionsplan körs genom en simuleringsmodell skulle det vara fel att anta att det inte finns något pågående arbete måndag morgon. Vi kanske vill modellera lunchrasten på en bank, och det vore felaktigt att ignorera de kunder som är inne på banken i början av detta tidsfönster.

Det finns två sätt att hantera detta. Det första är att köra modellen under en uppvärmningsperiod. Det innebär i princip att köra modellen till dess att den når ett realistiskt tillstånd och endast avläsa resultat från modellen efter denna tidpunkt. Det andra sättet är att ställa in initiala förhållanden i modellen. Det innebär ofta att man placerar pågående arbete i modellen i början av en körning, till exempel kunder eller delar.

Det andra problemet handlar om att säkerställa att en tillräcklig mängd utdata har erhållits under simuleringen. Det första sättet att hantera detta är att köra modellen länge. Det andra är att upprepa proceduren flera gånger. Genom att upprepa proceduren flera gånger och ta medelvärdet av resultaten kan man bättre beräkna hur väl en modell presterar.

 

Simuleringsexperimentering

Simuleringsexperiment kan ha olika form. De beskrivs här: interaktiv experimentering, batchförsök, jämföra alternativ och sökexperimentering.

Interaktiv experimentering innebär att se på när simuleringen körs och göra förändringar av modellen för att se effekten. När man tittar på simuleringen kan det exempelvis hända att modellanvändaren märker av en flaskhals i någon del av modellen. Kapaciteten i detta område kan ökas (d.v.s. snabbare cykel, fler maskiner) och modellkörningen fortsättas för att se effekten av en sådan förändring.

Batchförsök utförs genom att ställa in de experimentella faktorerna och låta modellen köras under en viss definierad tid (eller till en specifik händelse) och under ett antal upprepningar. Detta kräver ingen interaktion från modellanvändaren, därför stängs displayen normalt av. Det förbättrar även modellens körhastighet. Syftet är att köra simuleringen under den tid som krävs för att erhålla statistiskt signifikanta resultat.

När man jämför alternativ finns ett begränsat antal scenarier att jämföra. Dessa scenarier är ofta kände när simuleringsstudien inleds, till exempel kan det finnas tre alternativa fabriksutformningar. Andra gånger uppstår scenarierna efterhand när simuleringsstudien fortskrider. Antalet scenarier (lösningsutrymmet) är ofta få.

Vid sökexperimentering finns inga fördefinierade scenarier. I stället varieras en eller flera experimentella faktorer till dess att ett mål eller en optimal nivå nås. Syftet kan till exempel vara att nå en viss målproduktionstakt eller en optimal kundservicenivå genom att balansera kostnaderna för resurserna mot kostnaderna för förlorade kunder. För denna typ av experimentering måste det finnas antingen ett tydligt definierat mål, normalt uttryckt som projektmålen, eller en väldefinierad funktion (t.ex. kostnad eller lönsamhet) som ska optimeras.

Lösningsutrymme

Oavsett experimentets natur är det viktigt att tänka på alla förhållanden under vilka modellen kan komma att användas. Detta område kallas lösningsutrymme.

Solution Space

På bilden ovanför visas de minimi- och maximivärden som varje experimentell faktor (fem i detta exempel) i en simuleringsmodell kan anta. Lösningsutrymmet är det område som motsvarar alla möjliga kombinationer av värden på de experimentella faktorerna. Detta utrymme kan självklart vara väldigt stort, vilket innebär att det kan vara lite som att "leta efter en nål i en höstack" att försöka komma fram till ett bra eller optimalt scenario. Därför är det viktigt att ha effektiva procedurer för att söka efter lösningsutrymmet.

Som ett exempel kan vi ta en simuleringsstudie av en tillverkningsanläggning, i vilken det finns fyra experimentella

faktorer. Varje faktor kan tilldelas ett antal olika nivåer enligt följande:

  • faktor 1 cykeltider: −20 %, −10 %, utgångsvärde, +10 %, +20 % (5 nivåer)
  • faktor 2 buffertstorlekar: −50 %, −25 %, utgångsvärde, +25 %, +50 % (5 nivåer)
  • faktor 3 maskineffektivitet: 85 %, 90 %, 95 % (3 nivåer)
  • faktor 4 antal underhållsoperatörer: 4, 5, 6, 7 (4 nivåer)

Totalt finns 300 scenarier (5 × 5 × 3 × 4). Tror ni att det är enkelt att testa 300 scenarier?