Waarden randomiseren
In deze oefening ga je verschillende randomisatiemethoden toepassen en onderzoeken. Het doel is dat je vertrouwd raakt met de methoden en met hoe ze de manier beïnvloeden waarop willekeurige getallen worden gegenereerd. Elke methode is nuttig in andere situaties, dus het is belangrijk om de verschillen te begrijpen.
Stel dat je een bedrijfsproces hebt dat ongeveer 15 minuten duurt. Je weet echter dat de werkelijke duur ongeveer vijf minuten kan variëren (omhoog of omlaag). Pas de verschillende randomisatiemethoden uit het pakket random toe om variaties in deze duur op een gecontroleerde manier te genereren.
Deze oefening maakt deel uit van de cursus
Discrete Event Simulation in Python
Oefeninstructies
- Genereer 1000 willekeurige procestijden als gehele getallen op basis van de gegeven informatie.
- Genereer 1000 willekeurige procestijden als kommagetallen (float) op basis van de gegeven informatie.
- Genereer 1000 pseudo-willekeurige procestijden als kommagetallen op basis van een Gauss-verdeling met een gemiddelde en standaardafwijking van respectievelijk 15 en 5.
- Genereer 1000 pseudo-willekeurige procestijden als kommagetallen op basis van een exponentiële verdeling met een lambda-parameter van 1,5 (positief) en een piek bij 15.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Generate random integer numbers
randint_array = np.array([____ for i in range(1000)])
# Generate random float numbers
uniform_array = np.array([____ for i in range(1000)])
# Generate random float numbers based on the Gaussian distribution
gauss_array = np.array([____ for i in range(1000)])
# Generate random float numbers based on the Exponential distribution
expon_array = np.array([____ + 15 for i in range(1000)])
plot_all(randint_array, uniform_array, gauss_array, expon_array)