ModEst:Q&A lopende estafette: verschil tussen versies

Uit Systeemmodellering
Naar navigatie springen Naar zoeken springen
 
(34 tussenliggende versies door 2 gebruikers niet weergegeven)
Regel 48: Regel 48:
 
:Een interne variabele wordt door het model berekend op basis van de gekozen waarden van de invoervariabelen. De invoervariabelen zélf worden door het model niet veranderd.
 
:Een interne variabele wordt door het model berekend op basis van de gekozen waarden van de invoervariabelen. De invoervariabelen zélf worden door het model niet veranderd.
 
:Als je bijvoorbeeld een [[discretetijdmodel]] maakt om te bepalen hoe lang het duurt om water aan de kook te brengen om thee te zetten, zijn ''de begintemperatuur van het water'' en ''het vermogen van de waterkoker'' '''invoervariabelen''', zijn ''de temperatuur van het water op een bepaald moment'' (die dus door het model berekend wordt) en ''de verstreken tijd'' '''interne variabelen''', en is ''de tijd die nodig is om 100 °C te bereiken'' (die dus ook berekend wordt) de '''uitvoervariabele'''.
 
:Als je bijvoorbeeld een [[discretetijdmodel]] maakt om te bepalen hoe lang het duurt om water aan de kook te brengen om thee te zetten, zijn ''de begintemperatuur van het water'' en ''het vermogen van de waterkoker'' '''invoervariabelen''', zijn ''de temperatuur van het water op een bepaald moment'' (die dus door het model berekend wordt) en ''de verstreken tijd'' '''interne variabelen''', en is ''de tijd die nodig is om 100 °C te bereiken'' (die dus ook berekend wordt) de '''uitvoervariabele'''.
 +
 +
'''Moet je in het modelschema al stochasten zetten of pas in de modelvergelijkingen?'''
 +
:Een [[stochast|stochastische variabele]] hoort in het modelschema te staan. Schrijf je in een vergelijking bijvoorbeeld:
 +
::A = 123 + B / U(1, C)
 +
:dan is U(1, C) wel ''stochastisch'', maar geen variabele maar een "anoniem" toevalsgetal uit een uniforme kansverdeling, vergelijkbaar met de "anonieme" constante 123: die vermeld je ook niet in het modelschema. De parameter C is wél een variabele die in het modelschema moet staan.
 +
:Noteer je deze vergelijking als twee aparte, dus bijvoorbeeld:
 +
::A = 123 + B/D
 +
::D ~ U(1, C)
 +
:dan is D een stochastische ''variabele'', en hoort daarom in het modelschema te staan.
  
 
== Systeemschets ==
 
== Systeemschets ==
 
'''Mag je in de systeemschets gebruik maken van een legenda of moet alles in de schets zelf staan?'''
 
'''Mag je in de systeemschets gebruik maken van een legenda of moet alles in de schets zelf staan?'''
 
:Een systeemschets moet direct herkenbaar zijn, dus zou er geen legenda nodig moeten zijn (een legenda is nodig voor ''[[Representatie#Symbolisch|symbolische]]'' representatie, en afgezien van de tekst van de labels hoort een systeemschets geen symbolische elementen te bevatten).
 
:Een systeemschets moet direct herkenbaar zijn, dus zou er geen legenda nodig moeten zijn (een legenda is nodig voor ''[[Representatie#Symbolisch|symbolische]]'' representatie, en afgezien van de tekst van de labels hoort een systeemschets geen symbolische elementen te bevatten).
 +
 +
'''Onze voorganger heeft de systeemschets niet in het Powerpoint-document gezet. Daardoor kunnen wij die niet aanpassen of checken over de bronvermelding klopt. Heeft dit gevolgen voor de beoordeling?'''
 +
:Het indienen van een diagram in een formaat dat je kunt aanpassen is een ''service'' die je biedt aan je opvolger. Het is ''wenselijk'' dat je dat doet, maar ''geen essentieel onderdeel van de opdracht''. Het is dus ook nog steeds toegestaan om bijvoorbeeld een foto van een handgetekend diagram te gebruiken, of een afbeelding gemaakt m.b.v. een ander tekenpakket. Dat geldt ook voor systeemschetsen.
  
 
== Conceptueel model ==
 
== Conceptueel model ==
Regel 181: Regel 193:
 
:Stel dat je in kolom '''R''' je uitvoerwaarde per replicatie hebt staan, en het gemiddelde over 1, 2, ..., N replicaties in de kolom '''S''' daarnaast berekent. Als je data in bijv. rij 5 begint, dan staat in cel '''S5''' de formule <tt>=GEMIDDELDE(R$5:R5)</tt>, in cel '''S6''' dan <tt>=GEMIDDELDE(R$5:R6)</tt>, enzovoorts (dus het celbereik wordt steeds 1 rij groter).
 
:Stel dat je in kolom '''R''' je uitvoerwaarde per replicatie hebt staan, en het gemiddelde over 1, 2, ..., N replicaties in de kolom '''S''' daarnaast berekent. Als je data in bijv. rij 5 begint, dan staat in cel '''S5''' de formule <tt>=GEMIDDELDE(R$5:R5)</tt>, in cel '''S6''' dan <tt>=GEMIDDELDE(R$5:R6)</tt>, enzovoorts (dus het celbereik wordt steeds 1 rij groter).
 
:Twee fouten zijn snel gemaakt: Je kunt het '''dollarteken''' in <tt>R$5</tt> zijn vergeten, of je kunt in plaats van de '''dubbele punt''' een '''puntkomma''' hebben gebruikt (dus <tt>=GEMIDDELDE(R$5;R6)</tt>). Beide notaties zijn geldig in Excel, maar geven een heel andere uitkomst dan bedoeld.
 
:Twee fouten zijn snel gemaakt: Je kunt het '''dollarteken''' in <tt>R$5</tt> zijn vergeten, of je kunt in plaats van de '''dubbele punt''' een '''puntkomma''' hebben gebruikt (dus <tt>=GEMIDDELDE(R$5;R6)</tt>). Beide notaties zijn geldig in Excel, maar geven een heel andere uitkomst dan bedoeld.
 +
 +
==Histogrammen in verslaglegging==
 +
'''Moet je, als om een kansverdeling wordt gevraagd, bij <u>elk</u> experiment ook een histogram in je verslag opnemen?'''<br>
 +
Wij hebben een experimenteel ontwerp met 10 experimenten, en dan is 10 grafieken maken niet alleen veel werk, maar wordt het verslag ook erg lang.
 +
:Aparte histogrammen zijn '''niet''' nodig wanneer de kansverdelingen allemaal ongeveer dezelfde vorm hebben (en dat is meestal het geval). Het is dan voldoende om dat expliciet te vermelden (met verwijzing naar het histogram dat in &sect;3 staat), en dan in de overzichtstabel voor elkk experiment de vier beschrijvende statistieken te laten zien. Uit die μ, σ, MIN en MAX kun je dan al opmaken hoe de vorm verandert: lagere MIN en/of lager gemiddelde betekent bijv. dat de "bult" naar links verschuift, lagere standaarddeviatie dat de "bult" smaller is, hogere MAX dat de "staart" langer is.
  
 
== Notatie in verslag ==
 
== Notatie in verslag ==
Regel 191: Regel 208:
 
:waarbij dan wordt uitgelegd wat de kans p inhoudt, en '''niet'''  
 
:waarbij dan wordt uitgelegd wat de kans p inhoudt, en '''niet'''  
 
::<tt>=BINOMIALE.INV(1;K14;ASELECT())</tt>
 
::<tt>=BINOMIALE.INV(1;K14;ASELECT())</tt>
:In het <u>implementatie</u>hoofdstuk kan het bij bijzondere vergelijkingen (zoals de implementatie van sommen m.b.v. <tt>VERSCHUIVING</tt>, of van kansverdelingen zoals hierboven) zinvol zijn om de Excelformule te geven. Dat is echter niet verplicht, dus geen essentieel onderdeel van het verslag.
+
:In het <u>implementatie</u>hoofdstuk kan het bij bijzondere vergelijkingen (zoals de implementatie van sommen m.b.v. <tt>VERSCHUIVING</tt>, of van kansverdelingen zoals hierboven) zinvol zijn om de Excelformule te geven. Dat is echter <u>niet</u> verplicht, dus geen essentieel onderdeel van het verslag.
 +
 
 +
'''Kan Excel ook afronden op een aantal significante cijfers i.p.v. een aantal decimalen?'''
 +
:Helaas niet. Alleen het aantal decimalen kun je regelen. Doe dat ook zodat de decimale punt of komma binnen de kolommen recht uitgelijnd staat en je daardoor goed kunt zien of getallen toenemen of juist afnemen.
 +
:Kies ''per variabele'' een geschikt aantal decimalen!
 +
:Vermeld in je verslaglegging eventueel de significatie, en noem dan ook de beperking van Excel op dit gebied.
 +
:N.B. Zo'n vermelding is dan heel zorgvuldig, maar <u>niet</u> verplicht dus <u>geen</u> reden om een lagere beoordeling te geven.
  
 
== Voorkomen van kringverwijzing ==
 
== Voorkomen van kringverwijzing ==
  
 
'''Hoe voorkomen we een kringverwijzing in Excel?'''
 
'''Hoe voorkomen we een kringverwijzing in Excel?'''
:Een "kringverwijzing" in Excel ontstaat als je ''binnen dezelfde tijdstap'' (= rij in Excel) een variabele wilt berekenen op basis van een andere variabele, maar ook omgekeerd.
+
:Wanneer je een Excel-bestand opent en er verschijnt een waarschuwing dat er ''kringverwijzingen'' zijn aangetroffen, negeer die waarschuwing dan niet – je implementatie in Excel is dan fout. Excel laat je zelfs zien waar de fout zit: met blauwe stippen en pijlen worden de cellen aangewezen waar het mis gaat. Maak gebruik van die informatie!
 +
:Een "kringverwijzing" in Excel ontstaat als je in een formule in een cel verwijst naar de cel zelf, eventueel via andere cellen. Zoals wanneer er in een ALS-functie in C13 verwezen wordt naar E13, maar E13 gebruik maakt van de waarde van C13. Dan zou eerst de waarde van C13 bekend moeten zijn voordat de waarde van C13 bepaald kan worden, wat uiteraard niet mogelijk is.
 
:Bijvoorbeeld wanneer je de bereidheid om in een rij te gaan staan berekent uit de nieuwe rijlengte, maar de nieuwe rijlengte ook wilt berekenen op basis van diezelfde bereidheid.
 
:Bijvoorbeeld wanneer je de bereidheid om in een rij te gaan staan berekent uit de nieuwe rijlengte, maar de nieuwe rijlengte ook wilt berekenen op basis van diezelfde bereidheid.
 
:Dit kun je voorkomen door de één van de twee te baseren op de ''vorige'' waarde. In dit geval is het logisch om de ''nieuwe'' rijlengte te bepalen op basis van de ''vorige'' bereidheid. Je kunt het je als volgt voorstellen: de ''nieuwe'' rijlengte is het resultaat van de ''oude'' rijlengte en de bereidheid die er op dat moment (in de vorige tijdstap dus) was. De ''nieuwe'' bereidheid (die weer zal gelden tot de volgende tijdstap) volgt uit de ''nieuwe'' rijlengte.
 
:Dit kun je voorkomen door de één van de twee te baseren op de ''vorige'' waarde. In dit geval is het logisch om de ''nieuwe'' rijlengte te bepalen op basis van de ''vorige'' bereidheid. Je kunt het je als volgt voorstellen: de ''nieuwe'' rijlengte is het resultaat van de ''oude'' rijlengte en de bereidheid die er op dat moment (in de vorige tijdstap dus) was. De ''nieuwe'' bereidheid (die weer zal gelden tot de volgende tijdstap) volgt uit de ''nieuwe'' rijlengte.
 +
 +
= Estafette B =
 +
 +
=== Vraagstuk A – Afgepeigerde rendieren ===
 +
'''Wij vroegen ons af of rittijd in casus A een stochast is.'''
 +
:Er staat in de beschrijving: "hoe lang een rit van de Kerstman duurt", dus dat mag een 'gewone' (niet-stochastische) invoervariabele zijn.
 +
:Anders had er gestaan: "gegeven de gemiddelde duur van een rit van de Kerstman".
 +
 +
'''Volgens de gegeven grafiek zijn er drie groepen rendieren die samen optellen tot een constant aantal. Hoe noteer je dat in een VSD?'''<br>
 +
Volgens de [[Conceptueel model#Checklist voordat je indient|checklist voor Stap 1]] mag je niet aangeven dat het gegeven totale aantal rendieren de initiële grootte van de groepen beïnvloedt, want dan gaan er vloeiende pijlen een rechthoek in. Maar als je andersom aangeeft dat het totale aantal afhangt van de aantallen per groep, dan is het totale aantal rendieren een afhankelijke grootheid, terwijl het een ''gegeven'' is en daarom een ''onafhankelijke'' grootheid moet zijn.
 +
:Heel goede vraag! Inderdaad zijn de drie groepen rendieren (rendieren voor de slee, rendieren die moe zijn en rendieren die vrij zijn, d.w.z. niet moe en niet voor de slee) drie afzonderlijke voorraadgrootheden. In het VSD loopt er dan een stroom van "rendieren voor slee" naar "vermoeide rendieren", een stroom van "vermoeide rendieren" naar "rendieren die vrij zijn" en vanuit die vrije rendieren weer naar rendieren voor de slee.
 +
:Voorraadgrootheden hebben per definitie op t=0 een beginwaarde, en die geef je <u>niet</u> aan in een VSD. En je wilt inderdaad ook niet dat volgens het VSD het totaal aantal rendieren een afhankelijke variabele is. De oplossing voor dit "probleem" is dat je de grootheid "totaal aantal rendieren" niet in het VSD opneemt, maar in de toelichtende tekst aangeeft dat omdat de rendierstromen een "gesloten circuit" vormen de som van de waarden van de voorraadgrootheden constant zal zijn.
 +
:Bij de operationalisatie in Stap 2 kun je dat dan nog eens benadrukken door voor de drie voorraadgrootheden voor t=0 expliciete vergelijkingen te geven, dus bijvoorbeeld:
 +
::N<sub>slee,0</sub> = 4
 +
::N<sub>moe,0</sub> = 0
 +
::N<sub>vrij,0</sub> = N<sub>rendier</sub> &minus; N<sub>slee,0</sub> &minus; N<sub>moe,0</sub>
 +
:Zo heb je dan ook het gegeven totale aantal N<sub>rendier</sub> als invoervariabele benoemd. Dat is de meest elegante oplossing.
 +
 +
'''Is het verstandig om de ritduur als tijdstap &Delta;t te nemen?'''
 +
:Jazeker! In het vraagstuk staat dat rendieren ''na afloop van een rit'' al of niet moe zijn en dan worden vervangen. Wat er tijdens de rit gebeurt is dan niet relevant, dus hoef je die tijd niet op te splitsen in kortere stappen. Bovendien is volgens de onderzoeksvraag de duur van 1 rit een gegeven, dus een invoervariabele. Noem je die bijv. D, dan neem je in je operationele model de vergelijking &Delta;t = D op. Zo wordt de tijdstap een interne variabele en dat scheelt weer een beetje werk bij je gevoeligheidsanalyse in Stap 3.
 +
 +
=== Vraagstuk B – Bezorgen binnen een bedieningsgebied ===
 +
 +
'''Hoe bereken je de afstand tussen twee opeenvolgende adressen?'''
 +
:De adressen zijn steeds willekeurige punten (X, Y) die binnen een cirkel met straal r liggen. De afstand (in rechte lijn) tussen twee punten is gelijk aan de vierkantswortel uit (x<sub>1</sub> &minus; x<sub>2</sub>)<sup>2</sup> +  (y<sub>1</sub> &minus; y<sub>2</sub>)<sup>2</sup>. Om willekeurige punten binnen een cirkel te genereren gebruik je [https://nl.wikipedia.org/wiki/Poolco%C3%B6rdinaten poolcoördinaten], waarbij je een aselecte straal tussen 0 en r en een aselecte hoek θ gebruikt.
 +
 +
=== Vraagstuk C – Cadeaus inpakken ===
 +
'''Hoe geeft je de teams weer in het conceptuele model?'''<br>
 +
We zien de cadeaus op de tafel als de voorraadgrootheid in het systeem, maar weten niet goed hoe we de teamwisseling kunnen weergeven.
 +
:Maak het VSD met 3 voorraadgrootheden: naast het aantal cadeaus op de tafel ook het aantal Makers en het aantal Inpakkers. Een teamwisseling is dan een stroom van Inpakkers naar Makers of een stroom van Makers naar Inpakkers (dus twee ''aparte'' "dubbele pijlen met kranen" tussen deze twee grootheden). En dan beïnvloeden de Elfen-aantallen per team de instroom resp. uitstroom van de cadeaus op de tafel, terwijl het aantal cadeaus op de tafel samen met de grenswaarden en het aantal Elfen dat tegelijk wisselt bepalen of er Elfen de ene kant op stromen of de andere (of niet).
 +
:Lees ook wat [[#Vraagstuk_A_.E2.80.93_Afgepeigerde_rendieren|bij vraagstuk A]] over de initiële waarden van de aantallen rendieren per groep staat. Datzelfde kun je ook doen voor de aantallen Elfen per team.
 +
 +
'''Wat is bij dit vraagstuk de stochast?'''<br>
 +
Het vraagstuk stelt dat de gemiddelde productiviteit, het aantal Elfen, de aantallen cadeau's waarbij de Elfen wisselen, en de aantal elfen dat wisselt gegeven wordt. Hieruit kunnen wij niet opmaken welke de stochast is.
 +
:Gemiddeld is de productiviteit van de Elfen (in #<sub>cadeau</sub>/h dat ze maken c.q. inpakken) gegeven, maar elke tijdstap zal het aantal gemaakte c.q. ingepakte cadeaus een toevalsgetal zijn. Beide productiviteiten zijn dus stochasten. Bij de operationalisatie worden de parameter(s) van de kansverdeling voor die stochasten invoervariabelen die je bij vervolgens implementatie en modeltoepassing zó moet kiezen dat ze het gegeven gemiddelde opleveren.
 +
 +
'''Hoe bereken je de kans op een wisseling van team?'''<br>
 +
Welke vergelijking je zou moeten gebruiken om "de kans dat een elf op enig moment van team moet wisselen" te berekenen? Misschien iets met het gemiddelde aantal elfen dat per tijdstap van team moet wisselen?
 +
:Dat is inderdaad het idee. Omdat er "op enig moment" staat weet je dat het niet om een gebeurtenis per ''run'' gaat (zoals bijv. of een drone de grond raakt). Je moet dus per tijdstap kijken welk deel van '''alle''' werkzame Elfen in die tijdstap van team wisselt. Het gemiddelde (over alle tijdstappen) van dat deel is dan een goede benadering van de gevraagde kans dat eenn willekeurige Elf van team wisselt.
 +
 +
=== Vraagstuk D – Dakbedekking zagen ===
 +
'''Hoe noteer je "afronden naar beneden" wiskundig?'''<br>
 +
Om te bepalen hoeveel dakleien er uit één plank gezaagd worden willen we de planklengte delen door de lengte van één daklei en het resultaat afronden naar beneden. In Excel bestaat daarvoor de functie <tt>AFRONDEN.BENEDEN</tt>.
 +
:Om het resultaat van bijv. een deling x/y naar beneden af te ronden noteer je ⌊x/y⌋. Voor meer hierover, zie [[Notatie van vergelijkingen]].
 +
 +
'''Wat zijn de parameterwaarden van een driehoeksverdeling als het gemiddelde is gegeven?'''<br>
 +
Voor de planklengte willen we een driehoeksverdeling gebruiken. Bij T(''a'', ''b'', ''c'') is ''c'' de modus, maar in de onderzoeksvraag wordt de ''gemiddelde'' planklengte gegeven. Hoe bereken je dan de modus ''c''?
 +
:Voor de driehoeksverdeling is de ''verwachting'' (= het gemiddelde van oneindig veel toevalsgetallen uit een kansverdeling) gelijk aan (''a'' + ''b'' + ''c'')/3, zie bijv. [https://en.wikipedia.org/wiki/Triangular_distribution].
 +
:Als alleen het gemiddelde &mu; is gegeven, dan moet je (uiteraard) ''a'' &le; &mu; kiezen en ''b'' &ge; &mu;, en dan ''c'' berekenen met ''c'' = 3&mu; &minus; ''a'' &minus; ''b''.
 +
 +
=== Vraagstuk E – Evenwichtige productieteams ===
 +
 +
'''Is de productietijd / assemblagetijd per stap hetzelfde?'''
 +
:Nee. De onderzoeksvraag stelt ''"gegeven [...] de tijd die het een Elf gemiddeld kost om één onderdeel A resp. B te produceren c.q. een paar A+B te assembleren"''. Het woord "'''gemiddeld'''" wijst er op dat de genoemde drie grootheden per tijdstap in waarde zullen variëren. De afkortingen "resp." en "c.q." wijzen erop dat de waarden van deze drie gemiddeldes óók verschillend kunnen zijn.
 +
 +
'''Wat wordt er bedoeld met de "kansverdeling op de tijd dat team C klaar is"?'''
 +
:Goede vraag. Bedoeld wordt "de kansverdeling van de tijd die het duurt tot Team C klaar is". Dat is nu op Presto zo aangepast.
 +
:Het gaat dus om de tijd (in uren) vanaf de start van de simulatie (t=0) tot en met de tijdstap waarin het N<sup>de</sup> cadeau geassembleerd wordt.
 +
 +
=== Vraagstuk F – Feestverlichting ===
 +
'''Wij hebben moeite om dit vraagstuk te conceptualiseren. Heeft u een tip?'''
 +
:Teken een VSD. In dit vraagstuk kun je drie voorraadgrootheden onderscheiden: aantal lampjes AAN, aantal lampjes UIT, en aantal lampjes STUK. Daartussen lopen een stromen: van AAN naar UIT, van UIT naar AAN, en ook nog van UIT naar STUK.
 +
:Iedere uitstroom vanuit een voorraadgrootheid is dan een stochast die afhangt van de verblijftijd (zie [[Voorraad-stroomdiagram#Wat als stroomgrootheden stochastisch zijn?|deze uitleg op de wiki]]) waarbij die "verblijftijd" in dit geval dan bijv. "gemiddelde tijd AAN" is.
 +
:Lees ook wat [[#Vraagstuk_A_.E2.80.93_Afgepeigerde_rendieren|bij vraagstuk A]] over de initiële waarden van de aantallen rendieren per groep staat. Datzelfde kun je ook doen voor de aantallen lampjes per toestand. De aantallen AAN en UIT vormen weliswaar geen 100% gesloten circuit, maar de enige uitstroom uit de AAN&harr;UIT kringloop is de uitstroom naar STUK, dus de aantallen AAN, UIT en STUK samen zijn constant.
 +
 +
'''Hoe zorg je dat de lampjes de juiste gemiddelde brandduur hebben?'''
 +
:Brandduur is de totale tijd dat een lampje AAN kan zijn voordat het stuk gaat. Gegeven de gemiddelde tijd AAN &alpha; en de gemiddelde tijd UIT &upsilon; is een lampje &alpha;/(&alpha; + &upsilon;) van de tijd AAN. De kans dat een UIT lampje stuk gaat is daarom kleiner dan de tijdstap gedeeld door de gemiddelde brandduur &beta;: je neemt niet de hele tijdstap, maar &alpha;/(&alpha;+&upsilon;) maal de tijdstap. Het aantal lampjes dat per tijdstap van UIT naar STUK gaat is dan binomiaal verdeeld: Bin(N<sub>UIT,t</sub>, &alpha;/(&alpha;+&upsilon;)&middot;&Delta;t/&beta;).
 +
 +
=== Vraagstuk G – Gewicht en grootte doen er toe ===
 +
 +
=== Vraagstuk H – Haastige spoed is zelden goed ===
 +
 +
'''Zijn er meerdere controle-Elfen of is het er maar één?'''
 +
:Neem aan dat per tijdstap maar één setje door een controle-Elf wordt afgehandeld.
 +
 +
'''Is de duur van het afhandelen van een lijstje ook een modelparameter?'''
 +
:Jazeker. Gegeven is ook "het aantal lijstjes dat zo’n [afhandel-]Elf gemiddeld kan verwerken". Daar had beter nog bij kunnen staan "per uur". Dat is op Presto inmiddels aangepast.
 +
 +
'''Het afhandelproces is afgelopen als de voorraad verlanglijstjes op is. Hoe noteer je de vergelijking voor de totale verwerkingsduur?'''
 +
:De totale verwerkingsduur is gelijk aan het vroegste tijdstip waarop de voorraad leeg is. Wiskundig noteer je dat bijvoorbeeld als t<sub>klaar</sub> = min({t: N<sub>t</sub> &le; 0}).
 +
: N.B. Dit is vergelijkbaar met vraagstukken uit Estafette A, bijv. om te berekenen wanneer de bal een bepaalde snelheid heeft, of wanneer een fietser aan het eind van de helling is gekomen.
 +
 +
'''Wat als de afhandel-Elfen sneller werken dan de controle-Elf?'''
 +
:Goed punt! Als de afhandel-Elfen zo talrijk of snel zijn dat de voorraad afgehandelde lijstjes sneller groeit dan dat de controle-Elf er (met telkens 1 setje tegelijk) lijstjes vanaf haalt, dan kan het zijn dat de voorraad nog af te handelen lijstjes leeg is maar de stapel te controleren lijstjes nog niet. Dus is de totale verwerkingsduur eigenlijk gelijk aan het vroegste tijdstip waarop '''''beide''''' voorraadgrootheden nul zijn:
 +
::t<sub>klaar</sub> = min({t: N<sub>A,t</sub> &le; 0 &and; N<sub>C,t</sub> &le; 0})
 +
:waarbij N<sub>A,t</sub> het aantal nog af te handelen lijstjes is en N<sub>C,t</sub> het aantal nog te controleren lijstjes.
  
 
= Estafette A =
 
= Estafette A =
Regel 215: Regel 325:
 
:Je zoekt dan naar het '''eerste''' tijdstip t<sub>hvmax</sub> waarop de snelheid v<sub>t</sub> (in m/s) (groter) gelijk de halve maximumsnelheid is. De vergelijking daarvoor lijkt sterk op die voor het moment waarop een parachutist landt (zie collegeslides):
 
:Je zoekt dan naar het '''eerste''' tijdstip t<sub>hvmax</sub> waarop de snelheid v<sub>t</sub> (in m/s) (groter) gelijk de halve maximumsnelheid is. De vergelijking daarvoor lijkt sterk op die voor het moment waarop een parachutist landt (zie collegeslides):
  
:t<sub>hvmax</sub> = min({t: v<sub>t</sub> &ge; 0.5v<sub>t<sub>vmax</sub></sub>})
+
:t<sub>half</sub> = min({t: v<sub>t</sub> &ge; 0.5v<sub>t<sub>vmax</sub></sub>})
  
 
:En dan moet je natuurlijk ook weer een vergelijking opstellen voor het tijdstip t<sub>vmax</sub> waarop de bal zijn hoogste snelheid bereikt (en dat is het eerste tijdstip waarop de versnelling &le; 0 wordt; die versnelling volgt uit de resultaatkracht, en die volgt weer uit... enzovoorts -- zie het causalerelatiediagram!).
 
:En dan moet je natuurlijk ook weer een vergelijking opstellen voor het tijdstip t<sub>vmax</sub> waarop de bal zijn hoogste snelheid bereikt (en dat is het eerste tijdstip waarop de versnelling &le; 0 wordt; die versnelling volgt uit de resultaatkracht, en die volgt weer uit... enzovoorts -- zie het causalerelatiediagram!).
Regel 264: Regel 374:
 
'''Bij &Delta;t = 1/60 krijgen we voor N<sub>v,t</sub> alleen maar breuken kleiner dan 1, dus nooit meer dan 1 vraag in de wachtrij. Kan dat?'''
 
'''Bij &Delta;t = 1/60 krijgen we voor N<sub>v,t</sub> alleen maar breuken kleiner dan 1, dus nooit meer dan 1 vraag in de wachtrij. Kan dat?'''
 
:Waarschijnlijk hebben jullie een korte behandeltijd en/of een groot aantal medewerkers ingevoerd.
 
:Waarschijnlijk hebben jullie een korte behandeltijd en/of een groot aantal medewerkers ingevoerd.
:De gegeven tijdreeks heeft gemiddeld een aankomstfrequentie van ongeveel 1,3 vragen '''per minuut''', Zodra de verwerkingscapaciteit (d.w.z. aantal medewerkers gedeeld door behandeltijd) veel groter is dan die 1,3 vragen per minuut (80 vragen per uur) is het logisch dat er geen wachtrij ontstaat (wel een groot leeglooppercentage).
+
:De gegeven tijdreeks heeft gemiddeld een aankomstfrequentie van ongeveel 1,17 vragen '''per minuut''', Zodra de verwerkingscapaciteit (d.w.z. aantal medewerkers gedeeld door behandeltijd) veel groter is dan die 1,17 vragen per minuut (70 vragen per uur) is het logisch dat er geen wachtrij ontstaat (wel een groot leeglooppercentage).
 
:N.B. Omdat de tijdreeks '''per minuut''' is en in het operationele model de tijd in uren wordt uitgedrukt moet je in je Excelformule voor  vergelijking (2) f<sub>t</sub> met 60 vermenigvuldigen (die 60 heeft dan als eenheid min/h).
 
:N.B. Omdat de tijdreeks '''per minuut''' is en in het operationele model de tijd in uren wordt uitgedrukt moet je in je Excelformule voor  vergelijking (2) f<sub>t</sub> met 60 vermenigvuldigen (die 60 heeft dan als eenheid min/h).
:Is de verwerkingscapaciteit maar een klein beetje hoger (bijv. 1,4) zal er zo nu en dan een rij ontstaan, maar ook weer verdwijnen. Bij minder dan 1,3 wordt de wachtrij typisch steeds langer.
+
:Is de verwerkingscapaciteit maar een klein beetje hoger (bijv. 1,2) zal er zo nu en dan een rij ontstaan, maar ook weer verdwijnen. Bij minder dan 1,17 wordt de wachtrij typisch steeds langer.
 
:N.B. Plot altijd de lengte van de wachtrij in een lijngrafiek zodat je de dynamiek van het systeem kunt zien.
 
:N.B. Plot altijd de lengte van de wachtrij in een lijngrafiek zodat je de dynamiek van het systeem kunt zien.
  
Regel 277: Regel 387:
  
 
'''Moet de valversnelling ''g'' ook in het modelschema?'''
 
'''Moet de valversnelling ''g'' ook in het modelschema?'''
:Ja. Omdat het een modelparameter is is ''g'' een invoervariabele. Ook voor natuurconstanten is het dus zinvol om ze in het modelschema op te nemen. Voor mathematische constanten als &pi'; en ''e'' geldt dat niet.
+
:Ja. Omdat het een modelparameter is is ''g'' een invoervariabele. Ook voor natuurconstanten is het dus zinvol om ze in het modelschema op te nemen. Voor mathematische constanten als &pi; en ''e'' geldt dat niet.
 
:N.B. Het niet vermelden van ''g'' in het modelschema is '''geen''' reden voor puntenaftrek.
 
:N.B. Het niet vermelden van ''g'' in het modelschema is '''geen''' reden voor puntenaftrek.
 +
 +
'''Hoe implementeer je de gegeven somformule (vergelijking 1) in Excel?'''
 +
:De somformule berekent het gemiddelde van het absolute hoogteverschil. Dan is het in Excel het eenvoudigst om een extra kolom te maken naast de tijdafhankelijke variabelen, en daarin (voor elke tijdstap dus) het absolute verschil |h<sub>t</sub> - h<sub>G</sub>| te berekenen. In Excel bestaat daarvoor de functie ABS(...).
 +
:Heb je die kolom eenmaal gemaakt, dan kun je het gemiddelde over alle N tijdstappen berekenen m.b.v. de Excelfunctie GEMIDDELDE(...) met als argument (d.w.z. wat tussen de haakjes staat) de toegevoegde kolom met alle berekende absolute verschilwaarden. Het aantal tijdstappen N is dus geen invoervariabele, maar volgt uit het aantal rijen dat je hebt aangemaakt voor de tijdafhankelijke variabelen.
  
 
=== Vraagstuk E – E-auto opladen ===
 
=== Vraagstuk E – E-auto opladen ===
Regel 306: Regel 420:
 
Nu zal wanneer t<sub>eind</sub> < t<sub>begin</sub> O<sub>t</sub> altijd 0 zijn.  
 
Nu zal wanneer t<sub>eind</sub> < t<sub>begin</sub> O<sub>t</sub> altijd 0 zijn.  
 
:Een uitstekende opmerking! Zoals het model nu is geformuleerd moet t<sub>begin</sub> als kloktijd kleiner zijn dan t<sub>eind</sub>, dus kan de periode niet "over de middernachtgrens heen" gedefinieerd worden. Dat is dus een beperking van de gekozen operationalisatie, en typisch iets waar je bij implementatie al op kunt wijzen en in Stap 4 (''Modeltoepassing en interpretatie'') op moet reflecteren.
 
:Een uitstekende opmerking! Zoals het model nu is geformuleerd moet t<sub>begin</sub> als kloktijd kleiner zijn dan t<sub>eind</sub>, dus kan de periode niet "over de middernachtgrens heen" gedefinieerd worden. Dat is dus een beperking van de gekozen operationalisatie, en typisch iets waar je bij implementatie al op kunt wijzen en in Stap 4 (''Modeltoepassing en interpretatie'') op moet reflecteren.
:Je kunt er ook voor kiezen om nu bij de implementatie de conditionele vergelijking uit te breiden met deze regel als vijfde conditie:
+
:Je kunt er ook voor kiezen om nu bij de implementatie de conditionele vergelijking aan te passen door de vierde conditie uit te breiden en een vijfde toe te voegen:
::0 ''als'' t<sub>eind</sub> &ge; t<sub>begin</sub> &or; (t<sub>klok</sub> < t<sub>begin</sub> &and; t<sub>klok</sub> > t<sub>eind</sub>)
+
::0 ''als'' t<sub>eind</sub> &ge; t<sub>begin</sub> &and; (t<sub>klok</sub> < t<sub>begin</sub> &or; t<sub>klok</sub> > t<sub>eind</sub>)
 +
::0 ''als'' t<sub>eind</sub> < t<sub>begin</sub> &and; t<sub>klok</sub> &ge; t<sub>begin</sub> &and; t<sub>klok</sub> &le; t<sub>eind</sub>
 
:en dan ook de conditie in de vergelijking voor E<sub>t</sub> aan te passen zodat die voor t=0 nog steeds het beginlaadpercentage geeft, en verder wanneer kloktijd <u>gelijk</u> is aan het begin van de laadperiode:
 
:en dan ook de conditie in de vergelijking voor E<sub>t</sub> aan te passen zodat die voor t=0 nog steeds het beginlaadpercentage geeft, en verder wanneer kloktijd <u>gelijk</u> is aan het begin van de laadperiode:
 
:: ... ''als'' t = 0 &or; t<sub>klok</sub> = t<sub>eind</sub>
 
:: ... ''als'' t = 0 &or; t<sub>klok</sub> = t<sub>eind</sub>

Huidige versie van 13 jan 2022 om 13:36

Op deze pagina verzamelen we antwoorden op vragen die n.a.v. de lopende estafette worden gesteld.

Kijk a.j.b. eerst of je hier al antwoord vindt op je vragen voordat je een vraag stelt via Presto.

Voor niet-inhoudelijke vragen m.b.t. de modelleerestafette is er deze algemene Q&A. Faq.png

Hulp vragen

Hoe vraag ik om hulp?

In Presto staat onderaan de opdracht-schermen (voor uploaden en review) een knop waarmee je een vraag-dialoog kunt oproepen.
Mail dus niet rechtstreeks, tenzij het absoluut noodzakelijk is dat je een bestand meestuurt.

Kan ik ook naar de kamer van een van de docenten gaan met een vraag?

Nee, want we behandelen de gestelde vragen zo veel mogelijk in volgorde van binnenkomst.
Het zou niet fair zijn tegenover eerdere vragenstellers als we "langslopers" dan sneller zouden helpen.

Helpt het als ik mijn vraag afsluit met "Ik hoor graag zo spoedig mogelijk van u"?

Nee. Integendeel. Zeker niet als je dat mailtje vrijdagavond half zeven verstuurt.
Wij doen ons best binnen redelijke tijd te antwoorden, maar wij hebben ook andere bezigheden (zoals familie, vrienden en hobby's).

Moet ik over elke beslissing die ik neem in de estafette een vraag sturen naar de docenten?

Nee, maak vooral zelf je modelleerkeuzes! Als je aan het modelleren bent, moet je heel veel kleine en grote beslissingen nemen. Vaak zijn er meerdere goede mogelijkheden. Als je een aanname kunt onderbouwen, hoef je daar geen toestemming voor te vragen. Denk vooral aan Ockham.

Verwijzing naar de Q&A

Mag in de tekst verwezen worden naar de Q&A van de wiki, zonder naar een concreet punt te verwijzen? Onze voorgangers geven zelf geen toelichting over dit punt en verwijzen alleen maar. Is dit toegestaan?

Je mag naar iedere bron verwijzen, mits er een goede bronvermelding bij staat (in dit geval dus de URL van de Q&A in APA-stijl). Mooier is natuurlijk om wat er in de Q&A staat te verwerken in het verslag. In dat geval is het, omdat het een onderwijssituatie is en de Q&A onderdeel is van het lesmateriaal, niet per se nodig een bronvermelding op te nemen, al kan dat nooit kwaad natuurlijk.

Algemene modelleervragen

Onderzoeksvraag

Mag je bij "... gegeven x, y en z" veronderstellen dat die gegeven grootheden constant zijn?

Indien er geen reden is om aan te nemen dat exogene grootheden dynamisch zijn, dan mag je ze constant veronderstellen.
Bij sommige vraagstukken wordt expliciet aangegeven welke exogene grootheden tijdsafhankelijk zijn en daarom bij de operationalisatie (estafettestap 2) als een functie van de tijd moeten worden gedefineerd, d.w.z. x = f(t) (zie Functievoorschrift).

De casus vraagt een probabilistisch model en in de onderzoeksvraag wordt naar een kansverdeling gevraagd. Als wij in de vergelijkingen al weergeven welke kansverdeling gebruikt moet worden, geven wij al antwoord op de onderzoeksvraag. Wat wordt hier bedoeld?

Als in de onderzoeksvraag naar een kansverdeling wordt gevraagd (zoals "Wat is de kansverdeling van de wachttijd?"), wordt een empirische verdeling bedoeld: een verdeling die is gebaseerd op de uitkomsten van het model.
Stel dat dit de berekende wachttijden zijn in minuten (op grootte gesorteerd): 1,3; 1,5; 1,5; 1,9; 2,1; 2,3; 2,7; 3,1; 3,9; 4,4.
Dan kun je bijvoorbeeld een histogram maken voor de wachttijden binnen intervallen [0, 1>, [1, 2>, [2, 3>, [3, 4> en [4, 5>, die respectievelijk 0%, 40%, 30%, 20% en 10% hoog zijn.

Wanneer wij een reeks uitkomsten hebben, welke functie in Excel kan dan worden gebruikt om hier een kansverdeling uit te halen?

Daar is geen functie voor in Excel. Het is dan de bedoeling dat je de empirische verdeling laat zien in een histogram zoals beschreven in de vraag hierboven. Lees deze tekst hier op de wiki.

Modelschema

Hoe kunnen wij het onderscheid tussen invoervariabelen en interne variabelen het best zien?

Een interne variabele wordt door het model berekend op basis van de gekozen waarden van de invoervariabelen. De invoervariabelen zélf worden door het model niet veranderd.
Als je bijvoorbeeld een discretetijdmodel maakt om te bepalen hoe lang het duurt om water aan de kook te brengen om thee te zetten, zijn de begintemperatuur van het water en het vermogen van de waterkoker invoervariabelen, zijn de temperatuur van het water op een bepaald moment (die dus door het model berekend wordt) en de verstreken tijd interne variabelen, en is de tijd die nodig is om 100 °C te bereiken (die dus ook berekend wordt) de uitvoervariabele.

Moet je in het modelschema al stochasten zetten of pas in de modelvergelijkingen?

Een stochastische variabele hoort in het modelschema te staan. Schrijf je in een vergelijking bijvoorbeeld:
A = 123 + B / U(1, C)
dan is U(1, C) wel stochastisch, maar geen variabele maar een "anoniem" toevalsgetal uit een uniforme kansverdeling, vergelijkbaar met de "anonieme" constante 123: die vermeld je ook niet in het modelschema. De parameter C is wél een variabele die in het modelschema moet staan.
Noteer je deze vergelijking als twee aparte, dus bijvoorbeeld:
A = 123 + B/D
D ~ U(1, C)
dan is D een stochastische variabele, en hoort daarom in het modelschema te staan.

Systeemschets

Mag je in de systeemschets gebruik maken van een legenda of moet alles in de schets zelf staan?

Een systeemschets moet direct herkenbaar zijn, dus zou er geen legenda nodig moeten zijn (een legenda is nodig voor symbolische representatie, en afgezien van de tekst van de labels hoort een systeemschets geen symbolische elementen te bevatten).

Onze voorganger heeft de systeemschets niet in het Powerpoint-document gezet. Daardoor kunnen wij die niet aanpassen of checken over de bronvermelding klopt. Heeft dit gevolgen voor de beoordeling?

Het indienen van een diagram in een formaat dat je kunt aanpassen is een service die je biedt aan je opvolger. Het is wenselijk dat je dat doet, maar geen essentieel onderdeel van de opdracht. Het is dus ook nog steeds toegestaan om bijvoorbeeld een foto van een handgetekend diagram te gebruiken, of een afbeelding gemaakt m.b.v. een ander tekenpakket. Dat geldt ook voor systeemschetsen.

Conceptueel model

Kan ik meerdere modellen opnemen in het conceptuele model?

Is het mogelijk om meerdere modellen, zoals een voorraad-stroomdiagram, toestandsdiagram en cybernetisch model, op te nemen in de conceptualisatie van het systeem?

De genoemde modellen kunnen ieder afzonderlijk voldoende zijn als conceptueel model, maar je conceptuele model moet alle concepten en onderlinge relaties weergeven die volgens jou van belang zijn voor het beantwoorden van de onderzoeksvraag. Het kan dus goed zijn dat je meerdere diagrammen nodig hebt in je representatie van je conceptuele model.

Alle concepten en relaties in een toestandsdiagram?

Wij hebben voor een toestandsdiagram gekozen, en het wordt daarin heel onoverzichtelijk om alle grootheden toe te voegen. Op de wikipagina wordt niet echt goed duidelijk hoe dit moet met de toestandsdiagram. Moeten alle grootheden uit de systeemschets aangegeven worden in het toestandsdiagram?

Je conceptuele model moet alle concepten en onderlinge relaties weergeven die volgens jou van belang zijn voor het beantwoorden van de onderzoeksvraag. Als dit niet duidelijk kan in een toestandsdiagram, dan is een toestandsdiagram in dit geval blijkbaar niet voldoende als conceptueel model (dat geldt wel vaker voor een toestandsdiagram overigens). Je zult daarnaast dus nog een andere representatie moeten gebruiken.

Is een causalerelatiediagram / toestandsdiagram / voorraad-stroomdiagram verplicht?

Nee. De conceptualisatie moet alle concepten en onderlinge relaties weergeven. Als dat kan met één type diagram, is het niet nodig er meer op te nemen. Mocht dat het gekozen conceptuele model erg verduidelijken, dan mag het uiteraard wel.
Wanneer gevraag wordt een cybernetisch model te construeren, is het niet verplicht dit ook te tekenen. Het kan duidelijk zijn om een plaatje toe te voegen (en dan een op de casus toegespitst plaatje, niet van het standaard CM), maar noodzakelijk is dit niet: het kan ook duidelijk in tekst weergegeven worden (zie het voorbeeld bij de instructies voor Stap 1).

Moet je bij grootheden in een conceptueel model aangeven of het om een kans of een kansverdeling gaat?

In een VSD of CRD of systeemschets horen alleen grootheden te staan. Kansverdelingen zijn geen grootheden -- probeer maar: "De kansverdeling van het aantal lekke banden neemt toe." is geen correcte en betekenisvolle Nederlandse zin, maar "Het aantal lekke banden neemt toe." is dat wel.
Voor "kans" ligt dat anders: kansen zijn wel grootheden: "De kans op een lekke band neemt toe." is wél een grammaticaal correcte en betekenisvolle zin. Vandaar dat je in een VSD regelmatig kansen zult zien staan, vaak als exogene grootheden omdat kansen vaak als gegeven moeten worden beschouwd. Maar let op: ze kunnen ook endogeen zijn. Wanneer bijvoorbeeld gegeven is dat een kans lineair toeneemt, kun je die als een voorraadgrootheid weergeven met een constante instroom.
Een kans kan zelfs de uitvoervariabele zijn. Bij een probabilistisch model bepaal je kansen o.b.v. replicaties, dus door het model een (groot) aantal keren door te rekenen. Dat geeft dan een kansverdeling. Met een kans wordt de kansverdeling op een binaire variabele bedoeld, waarbij 1 weergeeft dat de gebeurtenis waarvoor de kans moet worden bepaald tijdens de modelrun optreedt. In zulke gevallen is het beter om in je conceptuele model die binaire grootheid op te nemen (bijv. "lekke band JA/NEE"). Op die manier maak je ondubbelzinnig duidelijk dat je model straks óf een 1 óf een 0 als uitvoerwaarde moet hebben.

Is het toegestaan om een aantal met # weer te geven in een conceptueel model (systeemschets, CRD, VSD)? Bijvoorbeeld # wachtende klanten?

Het teken # (dat inderdaad voor "aantal" staat) gebruiken we om eenheden te noteren wanneer het gaat om dimensieloze grootheden die een aantal aangeven. Zie deze uitleg m.b.t. dimensieanalyse.
Datzelfde teken gebruiken in de naam van een grootheid zou tot verwarring kunnen leiden. Noteer de grootheid "aantal wachtenden" daarom niet als "# wachtenden". Het gebruikelijke symbool voor een grootheid die een aantal voorstelt, is n. In een operationeel model kun je het aantal wachtende klanten dus bijvoorbeeld noteren als variabele nk. Noteer de eenheid van grootheden die aantallen zijn wél als #, of liever nog als #klant (dus met datgene wat je telt als subscript).
Hou dus goed uit elkaar:
  • de naam van de grootheid zelf (bijvoorbeeld "aantal wachtenden");
  • het symbool dat je ervoor gebruikt (bijvoorbeeld nk);
  • de eenheid die je ervoor gebruikt (in dit geval dus #klant).

Cybernetisch model

Kan een cybernetisch model gebruikt worden als systeemschets?

Het diagram van het cybernetische model dat op de wiki staat, is te schematisch om te gebruiken als systeemschets.
Je kunt de systeemschets wel baseren op dat diagram, maar dan moeten alle onderdelen worden vervangen door direct herkenbare afbeeldingen.

Kan een cybernetisch model in stap 1 worden gebruikt in plaats van een causalerelatiediagram, voorraad-stroomdiagram of toestandsdiagram?

Het cybernetische model is een conceptueel model, want het is een representatie van een systeem waarin je concepten en hun onderlinge relaties weergeeft die volgens jou van belang zijn voor het beantwoorden van de onderzoeksvraag. Maar je kunt er meestal niet alle concepten en relaties die van belang zijn goed in kwijt, dus het kan geen causalerelatiediagram, voorraad-stroomdiagram of toestandsdiagram vervangen. Die diagrammen zijn óók conceptuele modellen, maar laten op een andere manier concepten en relaties in het systeem zien. Een cybernetisch model kan dus wel als aanvulling gebruikt worden, vooral om het deel van het systeem weer te geven dat voor de regeling zorgt, maar dat is bijna nooit genoeg om het hele conceptuele model te representeren.
Als je een cybernetisch model gebruikt, is het niet voldoende om het plaatje van de wiki rechtstreeks over te nemen. Je zult het dan moeten aanpassen door de gegeven termen specifieker te maken (in het geval van een thermostaat kunnen "werkelijke uitvoer" en "gewenste uitvoer" bijvoorbeeld "gemeten temperatuur" en "gewenste temperatuur" worden; "comparator" wordt dan "thermostaat").

Voorraad-stroomdiagram

Mogen er meerdere stromen één voorraad ingaan? Dus meerdere instroompijlen naar een rechthoek, met maar één uitstroompijl?

Dat mag, bijvoorbeeld als die stromen een verschillende oorzaak hebben. Zo kun je bij een stuwmeer van een pompcentrale op hetzelfde moment waterinstroom hebben door de pomp én door instromende riviertjes. Die stromen kunnen onafhankelijk van elkaar toe- of afnemen, dus dat kan in het VSD het best met twee pijlen weergegeven worden. Ook twee of meer uitgaande pijlen mag, overigens – zie dit voorbeeld hier op de wiki.

Ik moet in mijn model het totaal berekenen van twee voorraadgrootheden. Hoe geef ik dat aan in het VSD?

Stel dat je je voorraadgrootheden A en B hebt genoemd, en dat je het totaal dat je wilt berekenen C noemt. Teken C dan als een informatiegrootheid (dus geen rechthoek!), en teken een informatiepijl vanuit A naar C en ook zo'n pijl vanuit B naar C. Beide pijlen label je met een +. In de toelichtende tekst leg je uit dat het om een optelling gaat (voor zover dat niet al blijkt uit de naamgeving van C).

Hoe geef je in een VSD de initiële waarde van een voorraadgrootheid weer?

Niet. De initiële waarde van een voorraadgrootheid introduceert immers geen nieuwe grootheid in de zin van "een nieuwe eigenschap van het systeem". Bij operationalisatie heb je ook geen extra symbool nodig. Als een voorraadgrootheid in het operationele model variabele G wordt, dan geeft G0 die grootheid op t=0 weer. De standaard beginwaarde voor voorraadgrootheden is 0. Als je de initialisatie expliciet wilt weergeven doe je dat d.m.v. een vergelijking direct voorafgaand aan de differentievergelijking, bijv. G0 = 123, gevolgd door Gt+Δt = Gt - Bin(Gt, p).
N.B. In Vensim kun je de initialisatie wel grafisch weergeven, maar dat is een kunstgreep t.b.v. het kunnen doorrekenen van het model. Gebruik deze mogelijkheid dus niet! Bij implementatie in Excel kun je de beginwaarde invullen op de rij die correspondeert met t=0.

Tijdsafhankelijke exogene grootheden als functies weergeven

Als in de onderzoeksvraag wordt gesteld dat bepaalde grootheden gegeven zijn, dan zijn die exogeen. Maar als je tijdsafhankelijke variabelen als functies van tijd t moet weergeven, dan zijn die variabelen endogeen. Hoe zit dat?

Bij operationalisatie van een dynamische exogene grootheid kun je kiezen: óf je geeft die grootheid weer met een gegevensverzameling óf je geeft hem weer met een tijdsafhankelijke functie f(t). In het oorspronkelijke causalerelatiediagram of voorraad-stroomdiagram zal deze grootheden dan geen ingaande pijlen hebben. Als je hem operationaliseert m.b.v. een vergelijking, bijv. Xt = a·cos(b·t), dan is Xt inderdaad wél endogeen. Wat dan exogeen wordt zijn de parameters in het functievoorschrift, dus hier worden a en b invoervariabelen van het model. Die variabelen staan dan natuurlijk wel voor specifieke grootheden: in dit geval is a de amplitude van de fluctuatie in X terwijl b proportioneel is met de frequentie van de fluctuatie.
Kies je voor operationalisatie in de vorm van een functievoorschrift met parameters, dan is het wenselijk dat je de parametergrootheden ook opneemt in je conceptuele model(len). De oorspronkelijke endogene grootheid zal dan ingaande pijlen krijgen en op die manier endogeen worden.

Hoe stel ik de vergelijking van een "afgekapte" sinusfunctie op?
Bij vraagstuk C en D moet je schommelingen in exogene variabelen geïdealiseerd weergeven m.b.v. een optelling van (co)sinusfuncties met verschillende amplitudes en periodes, waarbij je waarden < 0 opvat als 0. Hoe zet je dat in een modelvergelijking?

Maak eerst een modelvergelijking die het gewenste "grillig" flucturerende gedrag weergeeft. Je kunt zelf m.b.v een lijngrafiek in Excel nagaan of dat gedrag bij bepaalde parameterwaarden genoeg lijkt op het gedrag in de opgave.
Een functie die bestaat uit optelling van a·cos(n·t) zal periodiek symmetrisch om de tijdas "kronkelen". Door er een constante bij op te tellen kun je er voor zorgen dat hij hoger of lager t.o.v. de tijdas ligt.
Om er voor te zorgen dat de functiewaarde 0 is wanneer f(t) < 0 gebruik je een conditionele vergelijking (met grote accolade).

Dimensieanalyse

Moet je een tijd in een sinusfunctie ook meenemen in je dimensieanalyse?

Ja. Als je bijvoorbeeld de functie b·sin(c·t) hebt, moet c·t dimensieloos zijn. De grootheid c moet dus de dimensie tijd-1 hebben, ofwel een frequentie zijn.
Dit geldt voor meer wiskundige functies: ook het argument (= dat wat tussen haakjes staat) van een cosinus, of de exponent van een e-macht, moeten dimensieloos zijn.
(Dit is niet zo’n bekend gegeven; reken je voorgangers daar dus niet streng op af.)


Wij hebben een tijdsafhankelijke exogene variabele m.b.v. een functie geoperationaliseerd. Moeten we ook op die functie dimensieanalyse uitvoeren?

Ja. Lees de uitleg bij de voorgaande vraag en daarna dit voorbeeld. Wanneer je een flucturerende waterstand weergeeft als Wt = A·cos(2π·t / T), dan wordt Wt (in m t.o.v NAP) endogeen, en zijn de parameters A en T exogeen. Je moet dan laten zien dat A de amplitude (in m) van de fluctuatie in de waterstand weergeeft, en T (in h) de periode van de fluctuatie. Als de tijd t ook eenheid h heeft is de vergelijking dimensioneel correct.

Regelmatig terugkerende gebeurtenis

Hoe geef je in vergelijkingen (en in Excel) weer dat een gebeurtenis met een vaste frequentie optreedt?

Als die gebeurtenis f keer per uur optreedt, dan betekent dat dat er tussen twee opeenvolgende gebeurtenissen steeds 1/f uur zit. Je kunt dat dan modelleren door behalve een binaire variabele (met 1 = "de gebeurtenis treedt op") een timer-variabele aan je model toe te voegen. Zo'n timer kun je dan zien als een voorraadgrootheid (in uren) die per tijdstap Δt uur afneemt. Op het moment dat die voorraad dan "op" zou raken is, vul je hem weer met de tussentijd 1/f. Zie Excel:Timer voor regelmatige gebeurtenis voor een voorbeeld.

Gevoeligheidsanalyse

Hoe doe je gevoeligheidsanalyse bij een dynamisch model?

Als een uitvoervariabele X tijdsafhankelijk is krijg je heel veel uitvoerwaarden Xt. Welke waarde moet je dan gebruiken om de vergelijking te maken met de uitkomsten van het basisscenario?

Bij een dynamisch model krijg je voor de uitvoervariabelen inderdaad tijdreeksen. De gevoeligheidsanalyse voer je daarom niet uit op deze reeksen, maar op de beschrijvende statistieken van die reeksen (laagste waarde MIN, hoogste waarde MAX, gemiddelde waarde μ en de standaarddeviatie σ). De voorbeeldmodellen die op BrightSpace staan laten zien hoe je in Excel die beschrijvende statistieken per uitvoervariabele berekent. Bij de gevoeligheidsanalyse kijk je dan hoeveel (%) elk van deze vier statistieken verandert wanneer je een invoervariabele 10% hoger maakt (of een ander niet te klein en ook niet te groot percentage).

Excel biedt verschillende functies voor standaarddeviatie. Welke moet je gebruiken?

Voor simulatiemodellen zoals je die bij dit vak maakt gebruik je STDEV.P.

Differentievergelijking

Wij gebruiken de differentievergelijking Nt+Δt = Nt–Δt + S·Δt, is dat correct?

Nee, want jullie gebruiken twee notatieversies door elkaar.
Een differentievergelijking:
drukt de huidige waarde van een variabele uit op basis van de waarde die deze variabele in de vorige tijdstap had:
xt = f(xt-Δt)
of (wat wis- en natuurkundig op hetzelfde neerkomt):
drukt de waarde van een variabele in de volgende tijdstap uit op basis van de huidige waarde van die variabele:
xt+Δt = f(xt)
Zowel links als rechts van het =-teken moet dus expliciet verwezen worden naar de bedoelde tijdstap.
Zie hiervoor ook de wiki-pagina over het discretetijdmodel.

Poisson-verdeling

Ik gebruik de Poisson-verdeling en heb de kansverdeling opgesteld voor de aankomstfrequentie, in de volgende vorm: P(fA=k) = (fAk/k!) · (e-k ).

Dit is inderdaad de bijbehorende verdeling, maar daarmee kun je geen Poisson-verdeelde toevalsgetallen genereren.
Zie hiervoor vooral het overzicht dat op de wiki staat om stochasten te genereren: Excel:Kansverdelingen.

Replicaties

In een probabilistisch dynamisch model hebben we in iedere tijdstap uitvoervariabelen. We nemen aan dat ook dan weer replicaties moeten worden uitgevoerd, maar dan voor alle tijdstappen. Hoe implementeren we dit in Excel?

Bij een probabilistisch model kun je gebruikmaken van beschrijvende statistieken. Zo kun je bijvoorbeeld het minimum, maximum en gemiddelde van de tijdreeksen bepalen. Maar omdat iedere run van je model weer andere getallen oplevert, moet je vervolgens van deze beschrijvende statistieken weer de beschrijvende statistieken gebruiken.
Als je bijvoorbeeld bij één run het minimum, maximum en gemiddelde van een tijdreeks berekent, moet je over alle replicaties dáár weer het gemiddelde van nemen, dus: het gemiddelde van de minima, het gemiddelde van de maxima en het gemiddelde van de gemiddelden.
Zie ook de pagina over het experimenteel ontwerp en Bestand:TB112-replicaties.pdf, waarin wordt uitgelegd hoe je snel veel replicaties kunt maken.
Vaak gedraagt een model zich aan het begin nog even wat anders dan later, omdat de variabelen zich nog wat moeten aanpassen — dan kun je de de eerste zoveel tijdstappen uit de statistieken laten. Soms is een minimum of maximum niet zo zinnig, omdat een variabelewaarde blijft toenemen. In dat geval kun je bijvoorbeeld de stijging zelf (de toename gedurende een bepaalde tijd) gebruiken voor de statistiek.

Moet je alle beschrijvende statistieken implementeren in Excel, óók als de uitvoervariabele een binaire variabele is?

Bij een probabilistisch model moet je altijd beschrijvende statistieken berekenen. Bij binaire uitvoervariabelen lijken MIN en MAX niet echt relevant, maar je kunt er wel mooi mee controleren of de uitvoervariabele überhaupt wel van waarde verandert.
De standaarddeviatie σ is veel minder interessant dan het gemiddelde μ (want dát is de benadering van de kans p waar je naar op zoek bent), maar toch geeft die σ informatie. Theoretisch (d.w.z. wiskundig afgeleid) is de standaarddeviatie van Bin(N, p) gelijk aan √(p·(1-p)/N). Bij een binaire variabele met kans p op een 1 is N=1, dus is de standaarddeviatie in theorie √(p·(1-p)). Dit betekent dat je, als je het gemiddelde (over alle replicaties) μ van de binaire uitvoervariabele als kans p ziet, kunt checken of de waarde √(μ·(1-μ)) inderdaad dicht in de buurt zit van de standaarddeviatie (over alle replicaties) σ van de binaire uitvoervariabele. Net als MIN en MAX geeft dus ook σ informatie over of de uitvoer van je replicaties "klopt".

Onze grafieken met gemiddelde μ en σ over steeds meer replicaties convergeren niet. Hoe kan dat?

Dat gebeurt typisch als je formule voor de berekening van het gemiddelde niet het juiste celbereik aangeeft.
Stel dat je in kolom R je uitvoerwaarde per replicatie hebt staan, en het gemiddelde over 1, 2, ..., N replicaties in de kolom S daarnaast berekent. Als je data in bijv. rij 5 begint, dan staat in cel S5 de formule =GEMIDDELDE(R$5:R5), in cel S6 dan =GEMIDDELDE(R$5:R6), enzovoorts (dus het celbereik wordt steeds 1 rij groter).
Twee fouten zijn snel gemaakt: Je kunt het dollarteken in R$5 zijn vergeten, of je kunt in plaats van de dubbele punt een puntkomma hebben gebruikt (dus =GEMIDDELDE(R$5;R6)). Beide notaties zijn geldig in Excel, maar geven een heel andere uitkomst dan bedoeld.

Histogrammen in verslaglegging

Moet je, als om een kansverdeling wordt gevraagd, bij elk experiment ook een histogram in je verslag opnemen?
Wij hebben een experimenteel ontwerp met 10 experimenten, en dan is 10 grafieken maken niet alleen veel werk, maar wordt het verslag ook erg lang.

Aparte histogrammen zijn niet nodig wanneer de kansverdelingen allemaal ongeveer dezelfde vorm hebben (en dat is meestal het geval). Het is dan voldoende om dat expliciet te vermelden (met verwijzing naar het histogram dat in §3 staat), en dan in de overzichtstabel voor elkk experiment de vier beschrijvende statistieken te laten zien. Uit die μ, σ, MIN en MAX kun je dan al opmaken hoe de vorm verandert: lagere MIN en/of lager gemiddelde betekent bijv. dat de "bult" naar links verschuift, lagere standaarddeviatie dat de "bult" smaller is, hogere MAX dat de "staart" langer is.

Notatie in verslag

Moeten de Excel-formules in het verslag staan?

In het implementatiehoofdstuk staan geen formules zoals die in Excel zijn ingevoerd, alleen een doorlopende tekst. Is dit een essentiële fout?

Formules in het verslag moeten in het operationalisatiehoofdstuk in wiskundige notatie staan. Dus bijvoorbeeld
M ~ Bin(1, p),
waarbij dan wordt uitgelegd wat de kans p inhoudt, en niet
=BINOMIALE.INV(1;K14;ASELECT())
In het implementatiehoofdstuk kan het bij bijzondere vergelijkingen (zoals de implementatie van sommen m.b.v. VERSCHUIVING, of van kansverdelingen zoals hierboven) zinvol zijn om de Excelformule te geven. Dat is echter niet verplicht, dus geen essentieel onderdeel van het verslag.

Kan Excel ook afronden op een aantal significante cijfers i.p.v. een aantal decimalen?

Helaas niet. Alleen het aantal decimalen kun je regelen. Doe dat ook zodat de decimale punt of komma binnen de kolommen recht uitgelijnd staat en je daardoor goed kunt zien of getallen toenemen of juist afnemen.
Kies per variabele een geschikt aantal decimalen!
Vermeld in je verslaglegging eventueel de significatie, en noem dan ook de beperking van Excel op dit gebied.
N.B. Zo'n vermelding is dan heel zorgvuldig, maar niet verplicht dus geen reden om een lagere beoordeling te geven.

Voorkomen van kringverwijzing

Hoe voorkomen we een kringverwijzing in Excel?

Wanneer je een Excel-bestand opent en er verschijnt een waarschuwing dat er kringverwijzingen zijn aangetroffen, negeer die waarschuwing dan niet – je implementatie in Excel is dan fout. Excel laat je zelfs zien waar de fout zit: met blauwe stippen en pijlen worden de cellen aangewezen waar het mis gaat. Maak gebruik van die informatie!
Een "kringverwijzing" in Excel ontstaat als je in een formule in een cel verwijst naar de cel zelf, eventueel via andere cellen. Zoals wanneer er in een ALS-functie in C13 verwezen wordt naar E13, maar E13 gebruik maakt van de waarde van C13. Dan zou eerst de waarde van C13 bekend moeten zijn voordat de waarde van C13 bepaald kan worden, wat uiteraard niet mogelijk is.
Bijvoorbeeld wanneer je de bereidheid om in een rij te gaan staan berekent uit de nieuwe rijlengte, maar de nieuwe rijlengte ook wilt berekenen op basis van diezelfde bereidheid.
Dit kun je voorkomen door de één van de twee te baseren op de vorige waarde. In dit geval is het logisch om de nieuwe rijlengte te bepalen op basis van de vorige bereidheid. Je kunt het je als volgt voorstellen: de nieuwe rijlengte is het resultaat van de oude rijlengte en de bereidheid die er op dat moment (in de vorige tijdstap dus) was. De nieuwe bereidheid (die weer zal gelden tot de volgende tijdstap) volgt uit de nieuwe rijlengte.

Estafette B

Vraagstuk A – Afgepeigerde rendieren

Wij vroegen ons af of rittijd in casus A een stochast is.

Er staat in de beschrijving: "hoe lang een rit van de Kerstman duurt", dus dat mag een 'gewone' (niet-stochastische) invoervariabele zijn.
Anders had er gestaan: "gegeven de gemiddelde duur van een rit van de Kerstman".

Volgens de gegeven grafiek zijn er drie groepen rendieren die samen optellen tot een constant aantal. Hoe noteer je dat in een VSD?
Volgens de checklist voor Stap 1 mag je niet aangeven dat het gegeven totale aantal rendieren de initiële grootte van de groepen beïnvloedt, want dan gaan er vloeiende pijlen een rechthoek in. Maar als je andersom aangeeft dat het totale aantal afhangt van de aantallen per groep, dan is het totale aantal rendieren een afhankelijke grootheid, terwijl het een gegeven is en daarom een onafhankelijke grootheid moet zijn.

Heel goede vraag! Inderdaad zijn de drie groepen rendieren (rendieren voor de slee, rendieren die moe zijn en rendieren die vrij zijn, d.w.z. niet moe en niet voor de slee) drie afzonderlijke voorraadgrootheden. In het VSD loopt er dan een stroom van "rendieren voor slee" naar "vermoeide rendieren", een stroom van "vermoeide rendieren" naar "rendieren die vrij zijn" en vanuit die vrije rendieren weer naar rendieren voor de slee.
Voorraadgrootheden hebben per definitie op t=0 een beginwaarde, en die geef je niet aan in een VSD. En je wilt inderdaad ook niet dat volgens het VSD het totaal aantal rendieren een afhankelijke variabele is. De oplossing voor dit "probleem" is dat je de grootheid "totaal aantal rendieren" niet in het VSD opneemt, maar in de toelichtende tekst aangeeft dat omdat de rendierstromen een "gesloten circuit" vormen de som van de waarden van de voorraadgrootheden constant zal zijn.
Bij de operationalisatie in Stap 2 kun je dat dan nog eens benadrukken door voor de drie voorraadgrootheden voor t=0 expliciete vergelijkingen te geven, dus bijvoorbeeld:
Nslee,0 = 4
Nmoe,0 = 0
Nvrij,0 = Nrendier − Nslee,0 − Nmoe,0
Zo heb je dan ook het gegeven totale aantal Nrendier als invoervariabele benoemd. Dat is de meest elegante oplossing.

Is het verstandig om de ritduur als tijdstap Δt te nemen?

Jazeker! In het vraagstuk staat dat rendieren na afloop van een rit al of niet moe zijn en dan worden vervangen. Wat er tijdens de rit gebeurt is dan niet relevant, dus hoef je die tijd niet op te splitsen in kortere stappen. Bovendien is volgens de onderzoeksvraag de duur van 1 rit een gegeven, dus een invoervariabele. Noem je die bijv. D, dan neem je in je operationele model de vergelijking Δt = D op. Zo wordt de tijdstap een interne variabele en dat scheelt weer een beetje werk bij je gevoeligheidsanalyse in Stap 3.

Vraagstuk B – Bezorgen binnen een bedieningsgebied

Hoe bereken je de afstand tussen twee opeenvolgende adressen?

De adressen zijn steeds willekeurige punten (X, Y) die binnen een cirkel met straal r liggen. De afstand (in rechte lijn) tussen twee punten is gelijk aan de vierkantswortel uit (x1 − x2)2 + (y1 − y2)2. Om willekeurige punten binnen een cirkel te genereren gebruik je poolcoördinaten, waarbij je een aselecte straal tussen 0 en r en een aselecte hoek θ gebruikt.

Vraagstuk C – Cadeaus inpakken

Hoe geeft je de teams weer in het conceptuele model?
We zien de cadeaus op de tafel als de voorraadgrootheid in het systeem, maar weten niet goed hoe we de teamwisseling kunnen weergeven.

Maak het VSD met 3 voorraadgrootheden: naast het aantal cadeaus op de tafel ook het aantal Makers en het aantal Inpakkers. Een teamwisseling is dan een stroom van Inpakkers naar Makers of een stroom van Makers naar Inpakkers (dus twee aparte "dubbele pijlen met kranen" tussen deze twee grootheden). En dan beïnvloeden de Elfen-aantallen per team de instroom resp. uitstroom van de cadeaus op de tafel, terwijl het aantal cadeaus op de tafel samen met de grenswaarden en het aantal Elfen dat tegelijk wisselt bepalen of er Elfen de ene kant op stromen of de andere (of niet).
Lees ook wat bij vraagstuk A over de initiële waarden van de aantallen rendieren per groep staat. Datzelfde kun je ook doen voor de aantallen Elfen per team.

Wat is bij dit vraagstuk de stochast?
Het vraagstuk stelt dat de gemiddelde productiviteit, het aantal Elfen, de aantallen cadeau's waarbij de Elfen wisselen, en de aantal elfen dat wisselt gegeven wordt. Hieruit kunnen wij niet opmaken welke de stochast is.

Gemiddeld is de productiviteit van de Elfen (in #cadeau/h dat ze maken c.q. inpakken) gegeven, maar elke tijdstap zal het aantal gemaakte c.q. ingepakte cadeaus een toevalsgetal zijn. Beide productiviteiten zijn dus stochasten. Bij de operationalisatie worden de parameter(s) van de kansverdeling voor die stochasten invoervariabelen die je bij vervolgens implementatie en modeltoepassing zó moet kiezen dat ze het gegeven gemiddelde opleveren.

Hoe bereken je de kans op een wisseling van team?
Welke vergelijking je zou moeten gebruiken om "de kans dat een elf op enig moment van team moet wisselen" te berekenen? Misschien iets met het gemiddelde aantal elfen dat per tijdstap van team moet wisselen?

Dat is inderdaad het idee. Omdat er "op enig moment" staat weet je dat het niet om een gebeurtenis per run gaat (zoals bijv. of een drone de grond raakt). Je moet dus per tijdstap kijken welk deel van alle werkzame Elfen in die tijdstap van team wisselt. Het gemiddelde (over alle tijdstappen) van dat deel is dan een goede benadering van de gevraagde kans dat eenn willekeurige Elf van team wisselt.

Vraagstuk D – Dakbedekking zagen

Hoe noteer je "afronden naar beneden" wiskundig?
Om te bepalen hoeveel dakleien er uit één plank gezaagd worden willen we de planklengte delen door de lengte van één daklei en het resultaat afronden naar beneden. In Excel bestaat daarvoor de functie AFRONDEN.BENEDEN.

Om het resultaat van bijv. een deling x/y naar beneden af te ronden noteer je ⌊x/y⌋. Voor meer hierover, zie Notatie van vergelijkingen.

Wat zijn de parameterwaarden van een driehoeksverdeling als het gemiddelde is gegeven?
Voor de planklengte willen we een driehoeksverdeling gebruiken. Bij T(a, b, c) is c de modus, maar in de onderzoeksvraag wordt de gemiddelde planklengte gegeven. Hoe bereken je dan de modus c?

Voor de driehoeksverdeling is de verwachting (= het gemiddelde van oneindig veel toevalsgetallen uit een kansverdeling) gelijk aan (a + b + c)/3, zie bijv. [1].
Als alleen het gemiddelde μ is gegeven, dan moet je (uiteraard) a ≤ μ kiezen en b ≥ μ, en dan c berekenen met c = 3μ − ab.

Vraagstuk E – Evenwichtige productieteams

Is de productietijd / assemblagetijd per stap hetzelfde?

Nee. De onderzoeksvraag stelt "gegeven [...] de tijd die het een Elf gemiddeld kost om één onderdeel A resp. B te produceren c.q. een paar A+B te assembleren". Het woord "gemiddeld" wijst er op dat de genoemde drie grootheden per tijdstap in waarde zullen variëren. De afkortingen "resp." en "c.q." wijzen erop dat de waarden van deze drie gemiddeldes óók verschillend kunnen zijn.

Wat wordt er bedoeld met de "kansverdeling op de tijd dat team C klaar is"?

Goede vraag. Bedoeld wordt "de kansverdeling van de tijd die het duurt tot Team C klaar is". Dat is nu op Presto zo aangepast.
Het gaat dus om de tijd (in uren) vanaf de start van de simulatie (t=0) tot en met de tijdstap waarin het Nde cadeau geassembleerd wordt.

Vraagstuk F – Feestverlichting

Wij hebben moeite om dit vraagstuk te conceptualiseren. Heeft u een tip?

Teken een VSD. In dit vraagstuk kun je drie voorraadgrootheden onderscheiden: aantal lampjes AAN, aantal lampjes UIT, en aantal lampjes STUK. Daartussen lopen een stromen: van AAN naar UIT, van UIT naar AAN, en ook nog van UIT naar STUK.
Iedere uitstroom vanuit een voorraadgrootheid is dan een stochast die afhangt van de verblijftijd (zie deze uitleg op de wiki) waarbij die "verblijftijd" in dit geval dan bijv. "gemiddelde tijd AAN" is.
Lees ook wat bij vraagstuk A over de initiële waarden van de aantallen rendieren per groep staat. Datzelfde kun je ook doen voor de aantallen lampjes per toestand. De aantallen AAN en UIT vormen weliswaar geen 100% gesloten circuit, maar de enige uitstroom uit de AAN↔UIT kringloop is de uitstroom naar STUK, dus de aantallen AAN, UIT en STUK samen zijn constant.

Hoe zorg je dat de lampjes de juiste gemiddelde brandduur hebben?

Brandduur is de totale tijd dat een lampje AAN kan zijn voordat het stuk gaat. Gegeven de gemiddelde tijd AAN α en de gemiddelde tijd UIT υ is een lampje α/(α + υ) van de tijd AAN. De kans dat een UIT lampje stuk gaat is daarom kleiner dan de tijdstap gedeeld door de gemiddelde brandduur β: je neemt niet de hele tijdstap, maar α/(α+υ) maal de tijdstap. Het aantal lampjes dat per tijdstap van UIT naar STUK gaat is dan binomiaal verdeeld: Bin(NUIT,t, α/(α+υ)·Δt/β).

Vraagstuk G – Gewicht en grootte doen er toe

Vraagstuk H – Haastige spoed is zelden goed

Zijn er meerdere controle-Elfen of is het er maar één?

Neem aan dat per tijdstap maar één setje door een controle-Elf wordt afgehandeld.

Is de duur van het afhandelen van een lijstje ook een modelparameter?

Jazeker. Gegeven is ook "het aantal lijstjes dat zo’n [afhandel-]Elf gemiddeld kan verwerken". Daar had beter nog bij kunnen staan "per uur". Dat is op Presto inmiddels aangepast.

Het afhandelproces is afgelopen als de voorraad verlanglijstjes op is. Hoe noteer je de vergelijking voor de totale verwerkingsduur?

De totale verwerkingsduur is gelijk aan het vroegste tijdstip waarop de voorraad leeg is. Wiskundig noteer je dat bijvoorbeeld als tklaar = min({t: Nt ≤ 0}).
N.B. Dit is vergelijkbaar met vraagstukken uit Estafette A, bijv. om te berekenen wanneer de bal een bepaalde snelheid heeft, of wanneer een fietser aan het eind van de helling is gekomen.

Wat als de afhandel-Elfen sneller werken dan de controle-Elf?

Goed punt! Als de afhandel-Elfen zo talrijk of snel zijn dat de voorraad afgehandelde lijstjes sneller groeit dan dat de controle-Elf er (met telkens 1 setje tegelijk) lijstjes vanaf haalt, dan kan het zijn dat de voorraad nog af te handelen lijstjes leeg is maar de stapel te controleren lijstjes nog niet. Dus is de totale verwerkingsduur eigenlijk gelijk aan het vroegste tijdstip waarop beide voorraadgrootheden nul zijn:
tklaar = min({t: NA,t ≤ 0 ∧ NC,t ≤ 0})
waarbij NA,t het aantal nog af te handelen lijstjes is en NC,t het aantal nog te controleren lijstjes.

Estafette A

Vraagstuk A – Achtervolging met automatische piloot

Welke "gegeven grootheden" worden bedoeld?
Aan het eind van de vraagstukbeschrijving staat nu: "Omdat die grootheden volgens de onderzoeksvraag een gegeven zijn zal hiermee worden geëxperimenteerd met het computationele model." Ons is niet duidelijk om welke grootheden het gaat.

Helaas is die laatste zin inderdaad wat verwarrend. Hij heeft betrekking op de eerder in de alinea genoemde grootheden. Daar staat: "De fluctuatie in snelheid van voertuig B en de meetfrequentie van de autopiloot staan niet in het diagram in Figuur 2..."
De fluctuatie wordt bepaald door amplitude (= verschil tussen hoogste en laagste snelheid van voertuig B) en golflengte (= periode van de sinusfunctie waarmee die snelheid in de tijd verandert). De functie voor de snelheid van voertuig B heeft dus de vorm vt = a·sin(b·t) + c waarbij je a en c zo kiest dat vt tussen de twee snelheden fluctueert, en b zodanig dat dat met een realistische periode gebeurt.
De meetfrequentie in het geoperationaliseerde model is typisch 1x per tijdstap, dus 1/Δt.
De hoogste en laagste snelheid van voetuig B worden als gegeven benoemd. De periode wordt niet genoemd in de onderzoeksvraag, maar ligt impliciet besloten in het idee van "fluctuatie volgens een sinusfunctie". De meetfrequentie wordt evenmin benoemd, maar hoort bij het idee van een cybernetisch model. De tijdstap wordt ook nooit expliciet als gegeven benoemd, maar is typisch wel een invoervariabele van het model.

Vraagstuk B – Bal onder water

Hoe stel je een conditionele modelvergelijking op van het moment waarop de bal de helft van zijn maximale snelheid heeft bereikt?

Je zoekt dan naar het eerste tijdstip thvmax waarop de snelheid vt (in m/s) (groter) gelijk de halve maximumsnelheid is. De vergelijking daarvoor lijkt sterk op die voor het moment waarop een parachutist landt (zie collegeslides):
thalf = min({t: vt ≥ 0.5vtvmax})
En dan moet je natuurlijk ook weer een vergelijking opstellen voor het tijdstip tvmax waarop de bal zijn hoogste snelheid bereikt (en dat is het eerste tijdstip waarop de versnelling ≤ 0 wordt; die versnelling volgt uit de resultaatkracht, en die volgt weer uit... enzovoorts -- zie het causalerelatiediagram!).

Hoe kom ik bij de formule om de weerstandscoefficient C te bereken?
We hebben al veel gezocht en gelezen dat het Reynoldsgetal veel invloed heeft op de coëfficiënt, maar een formule konden we niet vinden.

Heel mooi dat jullie dieper op deze materie ingaan, maar de bedoeling was dat je gewoon de gegeven formule overneemt. Daarom staat die ook als "gegeven" in het vraagstuk. Als je voor de richting Energie en Industrie kiest leer je veel meer over over fysische transportverschijnselen.
Let er bij het uitschrijven van je vergelijking wel op dat C tijdafhankelijk is omdat ook de snelheid tijdafhankelijk is. C en v moeten dus een subscript-t hebben!

Wat de eenheid van de weerstandsfactor?

Als het goed is gebruik je als vergelijking voor de weerstandskracht zoiets als dit:
Fw,t = Ct · vt2 · d2
Links van het isgelijkteken staat N (newton) wat (volgens F=m·a) overeenkomt met kg m s-2 . Rechts wordt Ct vermenigvuldigd met (m/s)2 maal m2, dus staat er m4 s-2. Dan moet Ct dus eenheid kg m-3 hebben.

Hoe zit dat dan met de gegeven vergelijking voor C?

Gegeven is dat bij benadering geldt dat C = 165 + 9,4·10-3/(v·d). Aangezien [C] = kg/m3 moet de constante 165 ook die eenheid hebben. Dat geldt evenzeer voor de breuk, en omdat daarin gedeeld wordt door m2 s-1 zal de tweede constante dimensie kg s m-1 moeten hebben.

In ons Excelmodel wordt de versnelling at nooit kleinergelijk nul. Hoe vinden we dan tvmax?
Het helpt niet als we de tijdstap Δt korter maken.

Goede vraag! Je ziet de waarde van at vast héél klein worden, maar nooit nul.
Je kunt dit probleem ondervangen m.b.v de functie AFRONDEN. Als je wilt stoppen bij bijv. 0,0005 m/s2 dan zet je in de cel met de formule voor de versnelling =AFRONDEN(...; 3).
Maar je mag vmax in Excel natuurlijk ook bepalen met de MAX(...) functie!

Hoe bereken je in Excel het tijdstip waarop de helft van de maximale snelheid bereikt wordt?

Eerst bereken je de hoogste snelheid (m.b.v. de functie MAX, zie hierboven).
Daarna zoek je de "index" van de helft van die waarde in de kolom met snelheid vt m.b.v. de functie VERGELIJKEN.
Als je de waarde van vmax bijvoorbeeld in cel C10 berekent en de snelheid bijvoorbeeld in kolom B staat met in rij 15 de waarde voor t=0, rij 16 voor t=1, enzovoorts t/m bijv. rij 314, dan gebruik je als formule =VERGELIJKEN(C10/2; B15:B314)
De indexwaarde die je krijgt is de positie van de gezochte waarde in de tijdreeks (in dit voorbeeld een getal tussen 1 en 300).
Het tijdstip is dan (deze indexwaarde min 1) maal de tijdstap Δt. De "min 1" is nodig omdat index 1 tijd t=0 aangeeft.

Hoe krijg je dan de verplaatsing op dat tijdstip?

Als je de index hebt gevonden, dan zoek je in de kolom voor de verplaatsing de waarde die bij die index hoort m.b.v. de funtie VERSCHUIVING.
Staat de indexwaarde in cel C11 en de verplaatsing st bijvoorbeeld in kolom D (met in rij 15 weer de waarde voor t=0, rij 16 voor t=1, enzovoorts t/m rij 314) dan is de formule die de gezochte verplaatsing geeft =VERSCHUIVING(D15; C11-1; 0)
Je trekt dus 1 af van de index omdat 1 overeenkomt tijdstip met t=0.

Vraagstuk C – Chat box

In het bijgeleverde Excelbestand staat dat het aantal aankomsten per minuut is gegeven. Is dat dan ook de tijdstap?

Ja, dat is hier zeker het handigst. Neem dus Δt = 1/60 h.

Er staat: "gegeven het tempo waarmee nieuwe vragen binnenkomen". In het modelschema staat f, maar de aankomstfrequentie is toch niet constant?

Goed gezien. De aankomstfrequentie f is nu gegeven als een tijdreeks, dus is deze variabele tijdsafhankelijk. In het modelschema en in modelvergelijking 2 had dus beter ft kunnen staan.
Bij implementatie in Excel moet f dus een eigen kolom krijgen met daarin de data uit het bijgeleverde Excelbestand.
Vandaar ook het antwoord op de vorige vraag: neem dezelfde tijdstap als in het databestand staat aangegeven.
N.B. Bij dit vraagstuk hoef je dus niet na te gaan of het model gevoelig is voor verandering in de tijdstap Δt.

Bij Δt = 1/60 krijgen we voor Nv,t alleen maar breuken kleiner dan 1, dus nooit meer dan 1 vraag in de wachtrij. Kan dat?

Waarschijnlijk hebben jullie een korte behandeltijd en/of een groot aantal medewerkers ingevoerd.
De gegeven tijdreeks heeft gemiddeld een aankomstfrequentie van ongeveel 1,17 vragen per minuut, Zodra de verwerkingscapaciteit (d.w.z. aantal medewerkers gedeeld door behandeltijd) veel groter is dan die 1,17 vragen per minuut (70 vragen per uur) is het logisch dat er geen wachtrij ontstaat (wel een groot leeglooppercentage).
N.B. Omdat de tijdreeks per minuut is en in het operationele model de tijd in uren wordt uitgedrukt moet je in je Excelformule voor vergelijking (2) ft met 60 vermenigvuldigen (die 60 heeft dan als eenheid min/h).
Is de verwerkingscapaciteit maar een klein beetje hoger (bijv. 1,2) zal er zo nu en dan een rij ontstaan, maar ook weer verdwijnen. Bij minder dan 1,17 wordt de wachtrij typisch steeds langer.
N.B. Plot altijd de lengte van de wachtrij in een lijngrafiek zodat je de dynamiek van het systeem kunt zien.

Vraagstuk D – Drone

Moet Rotor AAN/UIT? ook in het modelschema?

Ja, in elk geval de variabele waarmee je deze binaire grootheid weergeeft. Een modelschema moet alle modelvariabelen weergeven uitgezonderd de tijd t (die is bij dynamische modellen sowieso al impliciet aanwezig als subscript-t). De tijdstap Δt mag je achterwege laten omdat ook die altijd nodig zal zijn bij een discretetijdmodel.
Bekijk vooral ook het voorbeeld van een uitgebreid modelschema: je ziet dat je altijd de symbolen voor de modelvariabelen moet aangeven, en dat je optioneel ook de corresponderende grootheden en eenheden kunt aangeven.

Moet de valversnelling g ook in het modelschema?

Ja. Omdat het een modelparameter is is g een invoervariabele. Ook voor natuurconstanten is het dus zinvol om ze in het modelschema op te nemen. Voor mathematische constanten als π en e geldt dat niet.
N.B. Het niet vermelden van g in het modelschema is geen reden voor puntenaftrek.

Hoe implementeer je de gegeven somformule (vergelijking 1) in Excel?

De somformule berekent het gemiddelde van het absolute hoogteverschil. Dan is het in Excel het eenvoudigst om een extra kolom te maken naast de tijdafhankelijke variabelen, en daarin (voor elke tijdstap dus) het absolute verschil |ht - hG| te berekenen. In Excel bestaat daarvoor de functie ABS(...).
Heb je die kolom eenmaal gemaakt, dan kun je het gemiddelde over alle N tijdstappen berekenen m.b.v. de Excelfunctie GEMIDDELDE(...) met als argument (d.w.z. wat tussen de haakjes staat) de toegevoegde kolom met alle berekende absolute verschilwaarden. Het aantal tijdstappen N is dus geen invoervariabele, maar volgt uit het aantal rijen dat je hebt aangemaakt voor de tijdafhankelijke variabelen.

Vraagstuk E – E-auto opladen

In het VSD wijzen veel pijlen naar "opladen (JA/NEE)" – hoe zit dat?

Inderdaad is de regeling van de lader het meest ingewikkelde deel van dit model. Het helpt dan om de zaken eerst op een rijtje te zetten. Er zijn vier toestanden waarin NIET geladen moet worden:
  • als het laadpercentage al 100% is;
  • als de stroom te duur is (prijs hoger dan bovengrens);
  • als het gewenste laadpercentage bereikt is en de stroom niet supervoordelig (prijs lager dan ondergrens);
  • als het tijdstip van de dag (de "klokttijd") buiten de laadperiode valt. Die laadperiode moet je daarom operationaliseren als twee gegeven (!) tijdstippen tbegin en teind.
Als er geen reden is om niet te laden, dan wordt er wél geladen.

Hoe stel je een vergelijking op met zoveel verschillende toestanden?

Dat noteer je als een conditionele modelvergelijking, dus met een grote accolade:
OpladenJaNee.png
Voor de variabelen kun je natuurlijk zelf symbolen kiezen. In dit voorbeeld is O de binaire regelvariabele (1 = JA), p de elektriciteitsprijs (de gegeven tijdreeks in het Excelbestand), L het laadpercentage, λ het gewenste laadpercentage, en tklok de kloktijd.
(Je kunt de eerste vier condities natuurlijk ook met de logische "of" ∨ tot één conditie samenvoegen, maar dat is minder goed leesbaar.)

Hoe bereken je die kloktijd?

De kloktijd (in h) is per definitie gelijk aan de simulatietijd t min 24 maal het gehele aantal dagen dat vanaf t=0 verstreken is. Dat aantal dagen krijg je door t/24 naar beneden af te ronden:
tklok = ⌊t / 24⌋·24
(zie ook weer de wikipagina over notatie van vergelijkingen)

Met de gegeven operationalisatie kun je niet bijv. tussen 22:00 en 05:00 laden. Hoe los je dat op?
Nu zal wanneer teind < tbegin Ot altijd 0 zijn.

Een uitstekende opmerking! Zoals het model nu is geformuleerd moet tbegin als kloktijd kleiner zijn dan teind, dus kan de periode niet "over de middernachtgrens heen" gedefinieerd worden. Dat is dus een beperking van de gekozen operationalisatie, en typisch iets waar je bij implementatie al op kunt wijzen en in Stap 4 (Modeltoepassing en interpretatie) op moet reflecteren.
Je kunt er ook voor kiezen om nu bij de implementatie de conditionele vergelijking aan te passen door de vierde conditie uit te breiden en een vijfde toe te voegen:
0 als teind ≥ tbegin ∧ (tklok < tbegin ∨ tklok > teind)
0 als teind < tbegin ∧ tklok ≥ tbegin ∧ tklok ≤ teind
en dan ook de conditie in de vergelijking voor Et aan te passen zodat die voor t=0 nog steeds het beginlaadpercentage geeft, en verder wanneer kloktijd gelijk is aan het begin van de laadperiode:
... als t = 0 ∨ tklok = teind
Ga eerst zelf na of dit inderdaad zal werken, en zorg dat je deze aanpassing duidelijk vermeldt in je verslaglegging (met verwijzing naar dit Q&A item).

Vraagstuk F – Filewaarschuwing

Ik kom niet uit de dimensieanalyses met betrekking tot het aantal rijstroken
Als de dichtheid op route A wordt bepaald met de weglengte (eenheid km), het aantal voertuigen op A (eenheid #v) en het aantal rijstroken van A (eenheid #r), komt hier als eenheid #v/(km·#r) uit.

Een weg bestaat uit een aantal rijstroken. Dat aantal heeft dan als eenheid #r en elke rijstrook heeft een lengte in km, dus de grootheid weglengte in het VSD heeft als eenheid km/#r. De dichtheid op de weg is dan het aantal voertuigen (op de weg, de voorraadgrootheid met eenheid #v) gedeeld door (aantal rijstroken maal lengte per rijstrook), dus gedeeld door eenheid (#r · km/#r). Zo kom je dan weer keurig op #v/km als eenheid voor de dichtheid uit.

Wat houdt de grootheid "Invloed van reistijd op routekeuze" in?
Kunnen wij hier zelf een getal en eenheid voor bedenken? We denken dat er mee bedoeld wordt vanaf welke tijd mensen bereid zijn een andere route te kiezen, maar dat staat niet uitgelegd in het vraagstuk.

Goede vraag, en ook de denkrichting is goed. Je hebt deze factor nodig om weer te geven hoe snel het deel van het totale verkeersaanbod qAB dat route A neemt afneemt naarmate de reistijd toeneemt. Hoe je dat doet ligt aan de manier waarop je de negatieve invloed van de reistijd weergeeft: met deling of met aftrekken. Bij deling krijg je iets van deze vorm:
qA,t = qAB/(α·rA,t)
waarin rA,t dan de reistijd via route A is. Bij aftrekken moet je denken aan deze vorm:
qA,t = qAB·(1 − α·rA,t)
In beide gevallen moet je dan wel opletten dat de waarde van α zo wordt gekozen dat de fractie van het totale verkeersaanbod niet groter dan 1 wordt, want dan zouden er meer voertuigen voor route A kiezen dan dat er bij de splitsing aankomen. De goede waarde van α kiezen hoort bij de volgende stap (implementatie) maar je moet bij operationalisatie wel al waarschuwen dat de vergelijking bij verkeerd gekozen waarden "onlogisch modelgedrag" zal vertonen.

Vraagstuk G – Groningengas mengen

Vraagstuk H – Helling afdalen

Ik ben alleen gekomen tot de formule van eindsnelheid, alleen lukt het mij niet om vanuit deze formule een snelheid te bepalen op een bepaald tijdstip.

Volg bij operationalisatie het CRD stap voor stap:
  • Begin met een afhankelijke grootheid (dus zonder uitgaande pijlende); dat is hier de afgelegde afstand.
  • Afstand hangt volgens het CRD alleen af van snelheid, en de pijl in het CRD moet een differentievergelijking worden: st+Δt = st + vt·Δt
  • Snelheid hangt volgens het CRD alleen af van versnelling (1 ingaande pijl) en die wordt ook weer een differentievergelijking vt+Δt = vt + at·Δt
Dus daar heb je je snelheid al, gedefinieerd voor élk tijdstip t.
  • Dan is de versnelling aan de beurt: drie ingaande pijlen (twee krachten en de massa), dus ook drie variabelen rechts van het = teken, uiteraard volgens F = m·a, en 'versnelling is geen "voorraad", dus gewoon: at = (Fh - Fw,t)/m (de hellingkracht verandert niet gedurende de afdaling, en dat is de simulatieperiode; daarom geen subscript-t)
  • Dan is de eerste variabele die nog niet gedefinieerd is die hellingkracht Fh; die heeft vier ingaande pijlen, en de betreffende grootheden moeten dus ook weer rechts van het = staan (+ is vermenigvuldigen, − wijst op delen, maar blijf altijd nadenken over de achterliggende wis- en natuurkunde)
Enzovoorts -- als het CRD goed is (en dat is het!) gewoon een kwestie van systematisch werken -- zie instructies voor deze stap.

Hoe bepaal je tmaxv in Excel?

Kijk op deze Q&A bij vraagstuk B. Ook daar moet de hoogst bereikbare snelheid worden bepaald. Onderaan, waar het ook over Excel gaat, wordt uitgelegd hoe je het "opzoeken van het tijdstip waarop iets gebeurt" in Excel kunt implementeren.

Hoe kan de vergelijking voor teind in Excel worden geimplementeerd?

De eenvoudigste manier is door een extra kolom in Excel toe te voegen waarin je "t: st > la" berekent, dus alle tijdstippen waarvoor de afgelegde weg groter is dan de lengte van de afdaling. Stel dat je die extra kolom in kolom J zet, dat tijd t in kolom E en afstand st in kolom F staat, en la in cel C5, dan zou de eerste rij in die kolom (voor t=0 dus, in dit voorbeeld rij 13) deze Excelformule bevatten:
=ALS(F13>C$5;E13;"n.v.t.")
Die zorgt ervoor dat als st > la de waarde van t wordt gebruikt, en anders geen getal maar de tekst "n.v.t." (iets anders mag ook, natuurlijk).
Deze formule moet je dan net als bij alle andere tijdreeksen kopiëren ("naar beneden slepen") zodat hij in evenveel rijen staat als er tijdstappen gesimuleerd worden.
Het vroegste tijdstip t vind je dan door in een aparte cel =MIN(J13:J312) te zetten (als je 300 tijdstappen simuleert). Je krijgt dan de laagste waarde van t (namelijk de eerste waarde die niet gelijk is aan "n.v.t.").