Versuchen Sie mit der Python-Klasse, das Produktionsverhalten von 1 Landwirt und das Konsumverhalten von 1 Verbraucher grob zu simulieren. ~ ~ Zeit, um die Bedingungen zu erklären ~

Danke im Voraus. Ich bin etwas nervös, weil ich Python und Simulation wirklich neu bin. Der diesmal hochgeladene Code von "Using python class ... ①" wird nicht bekannt gegeben, da es sich nur um die Bedingungseinstellung und die Hintergrunderklärung handelt. Wenn Sie nur das Ergebnis sehen möchten, fahren Sie mit dem nächsten Schritt fort unter Verwendung der Python-Klasse …… ②.

Akademischer Hintergrund des Plakats

Ich forsche an der Graduiertenschule über Agrarökonomie. Ich habe in der zweiten Hälfte des Grundstudiums angefangen, Mikroökonomie und messtechnische Ökonomie zu studieren. Ich studiere diesen Artikel nicht. Auf Python-Ebene hatte ich ein von Freunden gesponsertes Seminar, das mir einen groben Überblick über Installation und externe Module gab, und ich las das berühmte "Python Data Science Handbook" von Jake Vander Plas. Die Simulation ist ungefähr das Ende von "Numerische Berechnung und Simulation durch Python" von Tomohiro Odaka. Aus dem oben Gesagten sind sowohl Python als auch Simulation Anfänger, und die mikroökonomische Theorie befindet sich ebenfalls auf der mittleren Ebene des Grundstudiums.

Akademischer Hintergrund dieser Bemühungen

Ich traf Taylor (2005), Dyer (2006) und Janvry (1991), die mit dem landwirtschaftlichen Haushaltsmodell verwandt sind, und interessierte mich für Simulation. Obwohl ich ein Amateur war, habe ich beschlossen, meine eigene Simulation mit Python zu machen! Ich möchte ein Dorf schaffen, das den Inhalt der drei oben genannten Artikel widerspiegelt, oder ein Programm, das die Dörfer simuliert.

Sind die Spitzenforscher ein Modell, das Wirtschaftsmodelle wie SAM und CGE akkumuliert? Es scheint mit zu analysieren. Vielleicht das obige Modell? Ich denke, dass die optimale Lösung unter Verwendung "berechnet" wird. Es scheint auch, dass Sie dies relativ einfach mit der Software GAMS tun können. Andererseits war ich nicht darauf vorbereitet oder bezahlt, GAMS zu kaufen, und ich wollte später so etwas wie ein 2D-Spiel machen, also habe ich die Python-Klasse verwendet. Um die optimale Lösung zu erhalten, haben wir außerdem eine Methode verwendet, um Auswahlvariablen zufällig auszuwählen und die beste Kombination zu finden, die die Zielfunktion maximiert. Wenn meine Interpretation korrekt ist, "berechnet" diese Methode nicht die optimale Lösung und bietet Ihnen die beste Lösung für die unzähligen Lotterien. Das Bild ist vorerst eine Multi-Agent-Simulation. Es ist jedoch nicht bekannt, ob dies diesmal ein Multi-Agent ist.

Was ich diesmal machen möchte

Als ich es meinem Vorgesetzten zeigte, nachdem ich es gemacht hatte, Nach einigen Hinweisen erhielt ich einen Kommentar, dass "es das Produktions- und Konsumverhalten autarker Landwirte zu sein scheint". Ich gab später bekannt, dass ich das hätte tun sollen, aber vorerst habe ich ein Programm mit den folgenden Inhalten erstellt.

(1) Es gibt einen Landwirt und einen Verbraucher auf dieser Welt. (2) Es gibt zwei Arten von Produkten, A und B. Landwirte arbeiten auch außerhalb der Landwirtschaft. ③ A ist Getreide und B ist Frucht (Bild). ④ Der Landwirt stellt A und B her, um die Summe aus Gesamtproduktionswert und nichtlandwirtschaftlichem Lohn zu maximieren, und der Verbraucher verbraucht A und B, um den Nutzen zu maximieren. ⑤ Der Preis für Produkte, die viel konsumiert werden, steigt und der Preis für Produkte, die nicht viel konsumiert werden, sinkt.

Modell für das Verhalten von Landwirten und Verbrauchern

Vorerst werde ich es versichern, Ich komme ursprünglich aus der Landwirtschaftlichen Fakultät und bin größtenteils Autodidakt in Mikroökonomie. Der Ausdruck kann falsch sein. In diesem Fall tut es mir leid.

Beziehung zwischen Landwirten und Verbrauchern

In der diesmal angenommenen Situation ist der Landwirt eine Fabrik, die nur landwirtschaftliche Produkte produziert, und der Verbraucher ist eine Person, die nur die produzierten landwirtschaftlichen Produkte konsumiert. Es gibt keine anderen Menschen auf dieser Welt als diese beiden, und es gibt keine Transaktionen mit Menschen in anderen Welten. Daher ändert sich der Preis für landwirtschaftliche Erzeugnisse in Abhängigkeit vom Transaktionsstatus dieser beiden Personen. Darüber hinaus sollen A und B, die einmal hergestellt und nicht verbraucht wurden, auf die nächste Laufzeit übertragen werden.

Verhalten der Landwirte

Der hier angenommene Landwirt ist wie eine Fabrik zur Herstellung landwirtschaftlicher Produkte und konsumiert nicht. Darüber hinaus müssen nur zwei Produktionsfaktoren eingegeben werden, die eigenen Arbeitskräfte (L) und die anderen eigenen Produktionsfaktoren (K: Traktor und Land), und es besteht kein Zugang zum Markt für Produktionsfaktoren. Der Bauer arbeitet auch außerhalb des Hofes. Aus dem oben Gesagten ordnet dieser Landwirt die Produktionsfaktoren A und B zu, um den Gesamtproduktionswert + das Einkommen außerhalb der Landwirtschaft zu maximieren (kann als Gewinn bezeichnet werden?). Die Formel, die den obigen Zustand ausdrückt, lautet wie folgt.

\Pi = p_A*Q_A+p_B*Q_B+w*L_n...(1) \\ Q_A = k*L_A^\alpha *K_A^{1-\alpha}...(2) \\ Q_B = L_B^\beta *K_B^{1-\beta}...(3) \\ \bar{L} = L_A+L_B+L_n...(4) \\ \bar{K} = K_A+K_B...(5)

$ \ Pi $: Gesamtproduktionswert (können Sie Gewinn sagen?) $ p_A, p_B $: Preise der landwirtschaftlichen Erzeugnisse A und B (Erzeugerpreis = Verbraucherpreis) $ w $: Lohn $ Q_A, Q_B $: Herstellung der landwirtschaftlichen Produkte A und B. Der Funktionstyp der Produktionsfunktion ist vorerst Cobb-Douglas $ L_A, L_B, L_n : Arbeitskräfte, die A ( L_A ), B ( L_B ) und nichtlandwirtschaftlichen Arbeitskräften ( L_n $) zugewiesen sind) $ K_A, K_B $: Eingabe anderer Produktionsfaktoren, die A und B zugeordnet sind $ \ bar {L}, \ bar {K} $: Eigene Arbeitsmenge und andere Produktionselemente, obere Verwendungsgrenze jedes Produktionselements $ \ Alpha, \ beta $: Verteilungsrate der Arbeit und andere Produktionsfaktoren in den Produkten A und B (Summe der Verteilungsrate ist 1: konstanter Ertrag) $ k $: A ist ein Korn, also ein Koeffizient (> 1), der ausdrückt, dass Sie mehr Menge als Obst B herstellen können.

Konsumenten-Verhalten

Landwirte gehören nicht zu den hier betrachteten Verbrauchern. Dieser Verbraucher verbraucht A und B, um seinen Nutzen (Zufriedenheit) zu maximieren. Die Einschränkungen sind (1) Budgetbeschränkungen, (2) Angebot in der aktuellen Laufzeit + Überschuss in der vorherigen Laufzeit> Verbrauch in der aktuellen Laufzeit und (3) Sättigungsbeschränkungen.

U = c_A^\gamma+c_B^{1-\gamma}...(1) \\ I_t = I_{t-1} + i - C_{t-1} > C_t = p_A*c_A + p_B*c_B...(2:① Budgetbeschränkungen) \\ Q_{A,t} + s_{A,t-1} > c_{A,t}...(3:② Versorgung+Rest> Verbrauch) \\ Q_{B,t} + s_{B,t-1} > c_{B,t}...(4:② Versorgung+Rest> Verbrauch) \\ c_A + c_B < Appe...(5:③ Sättigungsbeschränkung)

$ U $: Nutzen (Zufriedenheit) $ c_A, c_B $: A- und B-Verbrauch. Cobb-Douglas wurde auch für den Funktionstyp der Utility-Funktion verwendet. $ I_t $: Gesamtbudget für Zeitraum t $ C_t $: Gesamtausgaben in Periode t, abweichend vom Verbrauch c (niedriger) $ i $: Einkommen für diesen Zeitraum $ s_ {t-1} $: Der Überschuss in der t-1-Periode $ Appe $: Appetit, eine Konstante, die angibt, wie viel Sie essen können $ \ Gamma $: Ein Multiplikator, der die Auswirkungen des Verbrauchs von A und B auf den Nutzen angibt

Andere (Bitte bestätigen Sie die Erklärung zur Preisbildung)

① Nächstes Budget: $ I_ {t + 1} = I_t + i --c_t $ ② Übertragungsbetrag für den nächsten Term: $ s_ {t + 1} = s_t + Q_t --c_t $ ③ Nächste Preisermittlungsmethode (0 <r <1)  if (Q_t + s_{t-1} - c_t)/(Q_t + s_{t-1}) < r:   p_{t+1} = 1.01 * p_t

else:   p_{t+1} = 0.99 * p_t

☆ Erklärung zu (Preisbildung) Wenn der Verbrauch eines bestimmten landwirtschaftlichen Erzeugnisses nahe an der oberen Verbrauchsgrenze liegt, steigt der Preis, da das landwirtschaftliche Erzeugnis ein beliebtes Produkt ist. Wenn andererseits ein Produkt überhaupt nicht konsumiert wird, wird es zu einem unbeliebten Produkt und sein Preis fällt. Mit den oben genannten Einstellungen ändert sich der Preis je nach Verhalten von Landwirten und Verbrauchern. Auf dem Bild schien es, dass die Produktion von zu vielen landwirtschaftlichen Produkten eingestellt und die Produktion von unzureichenden landwirtschaftlichen Produkten gefördert wurde, aber aufgrund der folgenden Nachteile wurde es ein subtiles Gefühl.

Reflexionen

Die Preisgestaltung war nicht gut.

Unten zur Vereinfachung Wir zahlen den Landwirten die Produktionsmenge, lagern landwirtschaftliche Produkte vorübergehend und ändern den Preis für landwirtschaftliche Produkte. Wir nennen sie "Märkte". Ursprünglich sollte ein ausgeglichener Preis durch Verbrauch = Produktion gebildet werden, aber Die Zahlung an den Landwirt erfolgt durch den Markt, nicht durch den Verbraucher, und dennoch erhalten weder der Landwirt noch der Markt den vom Verbraucher gezahlten Preis (verschwindet). Es scheint, dass die Einstellung schlecht ist. Vielleicht gilt deshalb die Gleichung für den Geldumlauf nicht. Aus den oben genannten Gründen sollte der Preis normalerweise zu einer bestimmten Preisspanne konvergieren, aber wie beim nächsten Mal gezeigt, wird er umherwandern.

Sollte ich von Anfang an ein Modell bauen, um das Produktions- und Konsumverhalten von "autarken Landwirten in Getreide A" zu erzeugen? In diesem Fall teilt der Landwirt die Produktionselemente zunächst nach dem Zufallsprinzip zu, um A (Getreide) und B (Obst) zu produzieren. Angenommen, A konsumiert sich selbst und B verkauft auf dem Markt. Wenden Sie sich als Nächstes der Verbraucherseite zu und fügen Sie eine neue Co (o von anderen) als Verbraucherprodukt hinzu. Zu diesem Zeitpunkt erwägt der autarke Landwirt eine Kombination, die den Nutzen U = U (cA, co) angesichts der Einnahmen aus dem Verkauf von B und der außerbetrieblichen Arbeit maximiert. Wenn Sie jedoch die Situation reproduzieren möchten, in der eine große Anzahl von Verbrauchern, Produzenten und Einzelhändlern überfüllt ist, anstatt einen autarken Landwirt in Betracht zu ziehen, müssen Sie nicht nur die Produktionsmenge landwirtschaftlicher Produkte, sondern auch die Geldmenge ausgleichen. herauskommen. In diesem Fall muss ich die makroökonomische Theorie ansprechen, die über mein Wissen hinausgeht. Ich habe noch keine Makroökonomie studiert ...

Nächstes Mal sendet Ihnen also (1) eine Konstante in den Parameter, (2) zeigt den von Ihnen erstellten Code an und (3) betrachtet kurz das Ergebnis. Machen.

Vielen Dank für Ihre weitere Unterstützung.

Verweise

~ Papier ~ [1]Alain de Janvry, Marcel Fafchamps and Elisabeth Sadoulet(1991) “Peasant household behavior with missing markets: some paradoxes explained” Economic Journal. Vol.101, pp.1400-1417. [2]George A. Dyer, Steve Boucher, and J. Edward Taylor(2006) “Subsistence response to market shocks” American journal of agricultural economics. Vol. 88, pp. 279-291. [3]J.Edward Taylor, George A. Dyer, Antonio Yu'nez-Naude(2005) "Disaggregated Rural Economywide Models for Policy Analysis" World Development. vol. 33, pp. 1671-1688

~ Lehrbuch ~ [1] Tomohiro Odaka (2018): "Numerische Berechnung und Simulation mit Python", Ohm [2]Jake VanderPlas(2016) "Python Data Science Handbook: Essential Tools for Working with Data", O'Reilly Media

Recommended Posts

Versuchen Sie mit der Python-Klasse, das Produktionsverhalten von 1 Landwirt und das Konsumverhalten von 1 Verbraucher grob zu simulieren. ~ ~ Zeit, um die Bedingungen zu erklären ~
Simulieren Sie mithilfe der Python-Klasse grob das Produktionsverhalten eines Landwirts und das Konsumverhalten eines Verbrauchers. ~ Zeit, um die Ergebnisse zu sehen ~
Versuchen Sie mit der Python-Klasse, das Produktions- und Konsumverhalten autarker Landwirte sehr grob und einfach zu simulieren. ① Zustandseinstellung
Versuchen Sie mit der Python-Klasse, das Produktions- und Konsumverhalten autarker Landwirte sehr grob und einfach zu simulieren. ② Zeigen Sie den Code und die Ergebnisse an
Versuchen Sie, das Problem der Python-Klassenvererbung zu lösen
Versuchen Sie es mit dem Sammlungsmodul (ChainMap) von python3
Versuchen Sie, die Bewegung des Sonnensystems zu simulieren
Versuchen Sie es mit GUI, PyQt in Python
Versuchen Sie, die Funktionsliste des Python> os-Pakets abzurufen
Versuchen Sie, den Betrieb von Netzwerkgeräten mit Python zu automatisieren
Ich möchte die Natur von Python und Pip kennenlernen
Die Geschichte, zum ersten Mal seit 5 Jahren wieder an die Front zurückzukehren und Python Django umzugestalten
Ich möchte die Frage nach der Methode "__init__" und dem Argument "self" der Python-Klasse klären.
Bestimmen Sie das Datums- und Uhrzeitformat mit Python und konvertieren Sie es in Unixtime
So erhalten Sie mithilfe der Mastodon-API Follower und Follower von Python
[Einführung in Python] Ich habe die Namenskonventionen von C # und Python verglichen.
Ich habe versucht, mit Python einen regulären Ausdruck von "Zeit" zu erstellen
[Python] So erhalten Sie den ersten und den letzten Tag des Monats
[Python3] Definition eines Dekorators, der die Ausführungszeit einer Funktion misst
Rufen Sie den Wert des Dropdown-Menüs mit Python und Selen ab und legen Sie ihn fest
Konvertieren Sie das Ergebnis von Python Optparse, um es zu diktieren und zu verwenden
Der Versuch, Segmentbäume Schritt für Schritt zu implementieren und zu verstehen (Python)
[Python] Ein Hinweis, dass ich das Verhalten von matplotlib.pyplot zu verstehen begann
Versuchen Sie vorerst, FireBase Cloud Firestore mit Python zu verwenden
Ich habe versucht, E-Mails von Node.js und Python mithilfe des E-Mail-Zustelldienstes (SendGrid) von IBM Cloud zuzustellen!