Kosten optimaliseren
Nu gaan we de functies die je hebt gebouwd gebruiken om onze productiekosten te optimaliseren. We willen de gemiddelde winst maximaliseren. Onze winst hangt echter af van meerdere factoren, terwijl we alleen de kosten zelf sturen. Daarom kunnen we de onzekerheid in de andere factoren simuleren en de kosten variëren om te zien hoe dit onze winst beïnvloedt.
Omdat jij het kleine maïsbedrijf runt, kun je de kosten kiezen — van $100 tot $5.000. Je wilt de kosten kiezen die je de maximale gemiddelde winst opleveren. In deze oefening simuleren we meerdere uitkomsten voor elk kostenniveau en berekenen we een gemiddelde. Vervolgens kiezen we het kostenniveau dat ons de hoogste gemiddelde winst geeft. Als je klaar bent, heb je een raamwerk om optimale invoer te kiezen voor zakelijke beslissingen.
Deze oefening maakt deel uit van de cursus
Statisticale simulatie in Python
Oefeninstructies
- Initialiseer de lege dictionary
results. - Simuleer voor elk kostenniveau de winst met de vooringeladen functie
profits()en voeg die toe aantmp_profits. - Sla het gemiddelde van
tmp_profitsvoor elk kostenniveau op in de dictionaryresults. - Vind het kostenniveau
cost_maxmet de hoogste gemiddelde winst doorresultsdoor de list comprehension te halen.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Initialize results and cost_levels variables
sims, results = 1000, ____
cost_levels = np.arange(100, 5100, 100)
# For each cost level, simulate profits and store mean profit
for cost in cost_levels:
tmp_profits = []
for i in range(sims):
tmp_profits.append(____)
results[cost] = np.mean(____)
# Get the cost that maximizes average profit
cost_max = [x for x in ____.keys() if ____[x] == max(____.values())][0]
print("Average profit is maximized when cost = {}".format(cost_max))