LoslegenKostenlos loslegen

Gewinne modellieren

In der vorherigen Übung hast du ein Modell der Maisproduktion aufgebaut. Für einen kleinen Hof hast du in der Regel keinen Einfluss auf den Preis oder die Nachfrage nach Mais. Angenommen, der Preis ist normalverteilt mit einem Mittelwert von 40 und einer Standardabweichung von 10. Dir steht eine Funktion corn_demanded() zur Verfügung, die den Preis entgegennimmt und die Nachfrage nach Mais bestimmt. Das ist sinnvoll, weil die Nachfrage normalerweise vom Markt bestimmt wird und nicht unter deiner Kontrolle liegt.

In dieser Übung arbeitest du an einer Funktion zur Berechnung des Gewinns, indem du alle anderen simulierten Variablen zusammenführst. Die einzige Eingabe dieser Funktion ist die fixierte cost der Produktion. Am Ende hast du eine Funktion, die für gegebene Kosten ein simuliertes Gewinn-Ergebnis liefert. Diese Funktion kannst du dann für die Kostenplanung verwenden.

Diese Übung ist Teil des Kurses

Statistische Simulation in Python

Kurs anzeigen

Anleitung zur Übung

  • Modelle den price als normalverteilte Zufallsvariable mit Mittelwert 40 und Standardabweichung 10.
  • Erhalte das Mais-supply, indem du die Funktion corn_produced(rain, cost) aufrufst, die du in der vorherigen Übung entworfen hast.
  • Rufe die Funktion corn_demanded() mit Eingabe price auf, um demand zu erhalten.
  • Profit \(=\) quantity \(\times\) price \(-\) cost. Wenn mehr Mais produziert wird als nachgefragt (supply > demand), dann ist die verkaufte Menge demand, sonst ist sie supply.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# Function to calculate profits
def profits(cost):
    rain = np.random.normal(50, 15)
    price = np.random.____
    supply = ____
    demand = ____
    equil_short = supply <= demand
    if equil_short == True:
        tmp = ____*price - cost
        return tmp
    else: 
        tmp2 = ____*price - cost
        return tmp2
result = profits(cost)
print("Simulated profit = {}".format(result))
Code bearbeiten und ausführen