Hallo Leute,
ich simuliere Umsätze, die vom Wetter abhängen mit Simpy. Dabei möchte ich gerne jeden Tag ein zufällige Temperatur ziehen. So wie ich es aktuell geschrieben habe, zieht Python am Anfang eine Temperatur und behält diese über die gesamte Simulation bei. Könnt ihr mir dabei helfen? Danke im Voraus.
random.randint(0,40) # so ziehe ich meine Temperatur
Danach kommen meine If, elif Bedingungen, die den Umsatz beeinflussen. Wie kann ich erzeugen, dass sich die Temperatur alle 60*60*24 Zeiteinheiten ändert? Danke im Voraus!!
Viele Grüße
Frage zu Randomziehung
- __blackjack__
- User
- Beiträge: 14076
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@Lucas1997: Na in dem Du alle 60*60*24 Zeiteinheiten eine neue Temperatur auswürfelst. Wobei man das vielleicht eher als zufällige Anpassung der vorherigen Temperatur machen sollte, denn wenn man das zu jedem dieser Zeitpunkte zwischen 0 und 40 neu auswürfelt bekommt einen recht unnatürlichen Temperaturverlauf.
“Vir, intelligence has nothing to do with politics!” — Londo Mollari
temp=random.randint(0,40)
So ziehe ich die Temperatur und beziehe mich im folgenden auf temp, um Kundenhäufigkeit und Kaufverhalten zu beeinflussen. Nur leider bleibt die Temperatur über die gesamte Simulation gleich.
So ziehe ich die Temperatur und beziehe mich im folgenden auf temp, um Kundenhäufigkeit und Kaufverhalten zu beeinflussen. Nur leider bleibt die Temperatur über die gesamte Simulation gleich.
- __blackjack__
- User
- Beiträge: 14076
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@Lucas1997: Das muss nicht der Realität entsprechen stimmt nicht. Natürlich musst Du die Realität nicht auf's Molekül genau simulieren, aber die Simulation muss schon so nah an der Realität sein, dass die Ergebnisse nicht vollkommener Unsinn ist. Denn wenn Du einfach jeden Tag eine völlig unabhängige neue Temperatur ziehst, dann ist die Lösung ja einfach nicht *eine* Simulation laufen zu lassen, sondern für jeden Tag eine Simulation laufen zu lassen.
Ansonsten können wir uns nur wiederholen: Du musst halt an der passenden Stelle zur passenden Bedingung eine neue Temperatur bestimmen. Und die müsste dann auch irgendwie zum Zustand der Simulation gehören. Wie auch immer Du den modellierst. Wobei wir wieder bei dem Thema wären, dass hier keiner ausser Dir Deinen Code kennt, und man deshalb auch nicht wirklich sinnvoll Ratschläge geben kann.
Ansonsten können wir uns nur wiederholen: Du musst halt an der passenden Stelle zur passenden Bedingung eine neue Temperatur bestimmen. Und die müsste dann auch irgendwie zum Zustand der Simulation gehören. Wie auch immer Du den modellierst. Wobei wir wieder bei dem Thema wären, dass hier keiner ausser Dir Deinen Code kennt, und man deshalb auch nicht wirklich sinnvoll Ratschläge geben kann.
“Vir, intelligence has nothing to do with politics!” — Londo Mollari
Hallo blackjack,
Danke für die Antwort. Die Sinulation hat so schon ihre Richtigkeit für den Zweck für den ich Sie benutzen will.
Die Frage, die ich mir stelle ist eben nur ob es eine Funktion gibt, die temp nach einer bestimmten Zeit neu generiert. Also direkt im Anschluss an die Definition von temp.
Danke für die Antwort. Die Sinulation hat so schon ihre Richtigkeit für den Zweck für den ich Sie benutzen will.
Die Frage, die ich mir stelle ist eben nur ob es eine Funktion gibt, die temp nach einer bestimmten Zeit neu generiert. Also direkt im Anschluss an die Definition von temp.
- __blackjack__
- User
- Beiträge: 14076
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@Lucas1997: Mit dem Argument kannst Du auch einfach ohne weitere Simulation irgendwelche zufälligen Datensätze erstellen. So eine Simulation soll ja etwas reales simulieren. Wenn sich das so überhaupt gar nicht wie die Realität verhält, also nicht mal ein bisschen plausibel ist, dann erhältst Du auch keine Datensätze über die man irgendwelche sinnvollen Aussagen treffen kann oder an denen man irgend etwas zeigen kann.
“Vir, intelligence has nothing to do with politics!” — Londo Mollari
- __blackjack__
- User
- Beiträge: 14076
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@snafu: Die ”Schleifendurchläufe” stecken ja im Simulationsrahmenwerk. Das kennt aber ”Prozesse” und Timeout-Events. Man kann also einen Prozess immer diese Zeitspanne warten lassen und dann eine neue Temperatur auswürfeln lassen.
“Vir, intelligence has nothing to do with politics!” — Londo Mollari
- __blackjack__
- User
- Beiträge: 14076
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@Lucas1997: Ich bin auf die Frage eingegangen. Soweit man die halt beantworten kann ohne das Du konkreter wirst. 
“Vir, intelligence has nothing to do with politics!” — Londo Mollari
Indem du deinen bisherigen Code zeigst. Ohne ist es kaum möglich, dir konkretere Antworten zu geben, als die, die du bisher erhalten hast. Deine Formulierungen klingen für mich so, als würdest dir dir vielleicht erhoffen, dass es irgendeinen Befehl gibt, den du nur hinschreiben musst und dann ist alles gelöst. So funktioniert das aber eher nicht.
hallo nochmal,
ich habe das Problem inzwischen gelöst. Nun nochmal zu einem Problem, das bereits angesprochen wurde. Gibt es einen Weg, um statt random.randint einen Befehl zu wählen, der nach einem stochastischem Prozess vorgeht? Temperatur heute hängt von Temperatur gestern ab?
Danke im Voraus.
ich habe das Problem inzwischen gelöst. Nun nochmal zu einem Problem, das bereits angesprochen wurde. Gibt es einen Weg, um statt random.randint einen Befehl zu wählen, der nach einem stochastischem Prozess vorgeht? Temperatur heute hängt von Temperatur gestern ab?
Danke im Voraus.