Kösimulering


Denna uppgift handlar om att simulera kösituationen på postkontoret i Skruttemåla. Alla parametrar som förekommer i problemet ska vara enkla att ändra. Vissa parametrar ska läsas in vid programkörningen för att enkelt kunna simulera lite olika situationer.

Postkontoret öppnar klockan 8:00 och stänger 19:00. Dessa tider ska dock läsas in vid programkörningen, så att andra öppettider kan simuleras. Tiden mellan att två kunder anländer fördelar sig slumpmässigt i intervallen:

    före klockan 11         0 - 6 minuter
    klockan 11-13           0 - 2 minuter
    klockan 13-16           0 - 6 minuter
    klockan 16-18           0 - 4 minuter
    efter klockan 18        0 - 8 minuter

När kunderna kommer tar de en nummerlapp, på samma sätt som det numera brukar fungera på t.ex. postkontor. Vi kan alltså se det som att kunderna ställer sig i en och samma kö och varje gång en kassa blir ledig blir första kunden i kön betjänad.

Varje kund har 1-4 ärenden. Sannolikheterna för att ha ett visst antal ärenden är:

    ett ärende     50%
    två ärenden    25%
    tre ärenden    15%
    fyra ärenden   10%

Varje ärende tar mellan en halv och fyra och en halv minut. Varje gång en kassa blir ledig betjänas som sagt första kunden i kön. Finns det inga kunder i kön passar kassörskan på att ta en snabb tupplur på upp till en halv minut innan hon på nytt tittar om någon står i kön.

Antalet öppna kassor är konstant under dagen (även om detta kan tänkas ändras i framtiden). Antal kassor läses in vid programstart.

Som utdata vill man ha en komplett beskrivning av vad som händer under dagen, nedan är ett exempel på ett utdrag under en hektisk del av dagen (i detta exempel har man fyra kassor):

12:52:18 kund 167 kommer och ställer sig i kö som nummer 16
12:52:40 kund 152 blir betjänad i kassa 3 efter att ha väntat i 00:15:06
12:53:07 kund 153 blir betjänad i kassa 2 efter att ha väntat i 00:13:58
12:54:00 kund 168 kommer och ställer sig i kö som nummer 15
12:54:11 kund 154 blir betjänad i kassa 1 efter att ha väntat i 00:13:04
12:54:45 kund 155 blir betjänad i kassa 1 efter att ha väntat i 00:13:01
12:55:33 kund 169 kommer och ställer sig i kö som nummer 14
12:55:48 kund 156 blir betjänad i kassa 3 efter att ha väntat i 00:13:22
12:56:24 kund 170 kommer och ställer sig i kö som nummer 14
12:56:57 kund 157 blir betjänad i kassa 3 efter att ha väntat i 00:13:05
12:57:16 kund 158 blir betjänad i kassa 1 efter att ha väntat i 00:13:08
12:57:28 kund 159 blir betjänad i kassa 2 efter att ha väntat i 00:12:38
12:57:44 kund 171 kommer och ställer sig i kö som nummer 12
12:58:16 kund 160 blir betjänad i kassa 4 efter att ha väntat i 00:12:25
12:58:21 kund 172 kommer och ställer sig i kö som nummer 12
12:59:43 kund 173 kommer och ställer sig i kö som nummer 13
13:01:13 kund 174 kommer och ställer sig i kö som nummer 14
13:02:07 kund 175 kommer och ställer sig i kö som nummer 15
13:02:34 kund 161 blir betjänad i kassa 3 efter att ha väntat i 00:15:24
13:03:33 kund 162 blir betjänad i kassa 1 efter att ha väntat i 00:15:26
13:03:35 kund 163 blir betjänad i kassa 3 efter att ha väntat i 00:15:22
13:04:29 kund 164 blir betjänad i kassa 4 efter att ha väntat i 00:16:01
13:05:05 kund 176 kommer och ställer sig i kö som nummer 12
13:05:15 kund 165 blir betjänad i kassa 2 efter att ha väntat i 00:16:02
13:06:00 kund 166 blir betjänad i kassa 2 efter att ha väntat i 00:15:09
13:07:26 kund 167 blir betjänad i kassa 2 efter att ha väntat i 00:15:07
13:07:55 kund 177 kommer och ställer sig i kö som nummer 10
13:08:22 kund 168 blir betjänad i kassa 2 efter att ha väntat i 00:14:21
13:10:07 kund 169 blir betjänad i kassa 3 efter att ha väntat i 00:14:33
13:10:42 kund 170 blir betjänad i kassa 3 efter att ha väntat i 00:14:18
13:11:13 kund 171 blir betjänad i kassa 3 efter att ha väntat i 00:13:29

Eftersom denna utskrift blir lång är det lämpligt att låta användaren få möjlighet att få denna utskrift till en fil i stället för på skärmen.

Vid stängningsdags stänger man dörren, men alla kunder som står i kön blir betjänade. Detta innebär att personalen kan behöva jobba över en stund om kön är lång.

Man önskar få reda på den genomsnittliga väntetiden för kunderna, samt den längsta tiden någon kund fått vänta. Man vill också få reda på hur lång tid av dagen en kassörska varit overksam, samt hur länge hon har behövt jobba över. Exempel på statistik:

    Totalt antal kunder         235
    Väntetid för kund (snitt)   00:04:48
    Väntetid för kund (max)     00:16:02
    Väntetid per kassa          03:24:38
    Övertid                     00:05:10

Tips: Gå igenom hur simuleringen av digitala kretsar gjordes. Använd dig av en liknande strategi.