Émulateur de marché classique

image

Chaque fois que je lis quelque chose sur l'économie, je manque constamment le moment entre «oui, bien sûr, tout est évident» et «pourquoi?» comment l'as-tu obtenu? "

Cela est généralement dû au fait que les exemples qui peuvent être cités dans la vie réelle sont soit élémentaires soit si complexes qu'ils ne permettent plus de comprendre.

Mais vous pouvez faire une sorte de simulation pour illustrer des idées? Pas vraiment de la vraie vie. Jeter l'insignifiant, quitter l'important et voir ce qui se passe?

Sous la coupe, je vais vous dire comment j'ai essayé d'écrire un émulateur de la concurrence la plus simple du marché et ce qui s'est finalement produit. Il y aura de nombreux graphiques.

Qu'est-ce qu'on fait?


Considérez, pour commencer, le plus classique, tout ce que le grand-père Adam Smith aime: nous avons des acheteurs et des fabricants de produits qui se font concurrence.

La théorie classique prétend qu'en l'absence d'autres facteurs (!) La concurrence entre vendeurs conduit à une optimisation des coûts et à l'établissement d'un prix d'équilibre.

De plus, il est avancé que ce même prix d'équilibre sera nettement plus bas que si le vendeur était un (monopole) ou plusieurs (oligopole).

Cela semble raisonnable, logique, intéressant. Dans la pratique, cependant, nous ne l'observons pas toujours. Trop de facteurs supplémentaires.

Je vais essayer de formuler les principales raisons pour lesquelles la concurrence «pure» n'est presque jamais rencontrée dans la vie réelle:

  • , ( ), , ,
  • , ( , ), “ ”
  • ( , , , )
  • ( , , )
  • en plus des participants au processus de vente, il existe un grand nombre de facteurs externes (états, avec taxes et droits, concentration géographique, facteurs aléatoires comme les mauvaises récoltes, les catastrophes ou les décisions humaines spontanées)

Il y a une volonté d'essayer de prendre en compte tous ces facteurs, sauf le dernier.

Nous formalisons le problème


Les personnages principaux:

  • consommateurs (acheteurs, citoyens, citoyens)
  • usines (ateliers, fabricants, commerçants, usines)

Les consommateurs gagnent régulièrement de l'argent et ont besoin d'un produit.
Dans notre modèle, il n'y aura qu'un seul produit. Il satisfait à la fois toute la pyramide des besoins de tous les consommateurs.

Toutes les usines produisent le produit, les différences ne concernent que la qualité et le prix. Les usines elles-mêmes entrent sur le marché et vendent leurs produits aux citoyens, sans intermédiaires.

L'objectif des consommateurs est d'acheter le meilleur produit pour eux, en dépensant un minimum d'argent.
L'objectif des usines est de maximiser leur capital.

En plus du fait que nous n'avons qu'un seul produit, il a toujours une caractéristique numérique objective et transparente de sa qualité. Les usines et les consommateurs apprécient la même qualité. Ce sont les propriétés d'un produit qui apparaissent avec sa production.

Les usines ont certaines capacités de production: coût (coûts, en dessous desquels le produit ne sera pas produit) et qualité maximale (valeur de qualité, au-dessus de laquelle le produit ne fonctionnera pas).

Après le cycle de vente, les usines investissent une partie de leur modernisation du capital. Parce que le progrès scientifique et technologique est une chose compliquée, l'algorithme fonctionne de cette façon: chaque usine qui a encore de l'argent dépense une somme aléatoire pour changer aléatoirement ses capacités de production (cela peut empirer).

Lorsqu'une usine manque d'argent, elle ne produit plus rien.

Le cycle complet du marché est le suivant:

  1. Les usines, si elles le peuvent, fabriquent des produits et les commercialisent.
  2. Les consommateurs viennent choisir la meilleure option pour eux-mêmes (parmi ceux disponibles pour eux)
  3. Des offres sont faites
  4. Les usines se modernisent si elles le peuvent

Et donc - un nombre suffisant d'itérations.

La théorie dit que dans de telles conditions, les usines seront en concurrence féroce les unes avec les autres, ce qui entraînera une baisse des prix et / ou de la qualité des produits.

Voyons ce qui se passe dans la pratique.

Début de la mise en œuvre


En tant qu'outil de développement, j'ai choisi le cahier Jupyter en python - un environnement aussi convivial que possible pour travailler avec des données, des tableaux rapides et des graphiques en toute hâte.

Le processus d'émulation lui-même ne semblait pas si effrayant, mais pour résumer les résultats, je voulais utiliser les riches outils pandas.

Le code est disponible ici.

Je ne pense pas que l'implémentation principale intéressera qui que ce soit: trois classes (usine, consommateur et produit), des fonctions pour travailler avec des instances de cette classe, des fonctions du «marché», tout est en boucle, tout est journalisé, les résultats sont écrits dans un fichier, puis les pandas prennent le relais.

Premiers ajustements


Assez rapidement, il est devenu clair que l'inégalité entre les personnes et entre les usines peut et doit être introduite dans le modèle.

Je note tout de suite, juste au cas où, que les noms des distributions sont conditionnels ci-dessous, ils sont placés entre guillemets et ne sont qu'une métaphore compressée. Les objectifs n'étaient pas de se moquer des convictions politiques de quelqu'un ni, en outre, de démontrer les leurs.

J'ai essayé plusieurs modèles de répartition des indicateurs:

  • «Communisme» - chaque objet a un nombre aléatoire, la distribution de probabilité est uniforme
  • «Socialisme développé», c'est la même chose, la distribution des probabilités est normale (pour la plupart, le salaire moyen)
  • «Société moderne» - la distribution de probabilité «à queue» (les millionnaires à une plus grande distance du salaire moyen que les pauvres), random.gammavariate function

Si nous prenons l'exemple des consommateurs, le type de distribution de leurs salaires affecte directement la forme de "Courbe de demande" (dépendance de la part des personnes désireuses d'acheter un produit, en fonction de son prix):
image
Courbe de demande pour les trois distributions du revenu de la population: "communisme" (égal), "socialisme développé" (normaliser) et "société moderne" (gamma) .

Comme vous pouvez le voir, dans le cas d'une distribution uniforme, la courbe de demande se transforme en une demande cassée (la probabilité d'acheter 1 lorsque le prix des marchandises est inférieur au salaire minimum, puis diminue linéairement).

Dans le cas d'une distribution uniforme des revenus, la courbe de demande devient comme un sigmoïde.
Dans le cas d'une répartition des revenus similaire à l'actuelle, le sigmoïde devient asymétrique. Et cela ressemble plus aux courbes de demande des manuels d'économie:

image

Est-ce à dire que la logique même de la courbe de demande implique une inégalité de revenus? Non, il y a un million de facteurs. Mais nous pouvons à peu près généraliser, en disant que l'inégalité dans la «force de la demande» (quelqu'un est prêt à payer trop cher pour un cheburek, quelqu'un est prêt à attendre une heure en ligne, et quelqu'un ne l'est pas) est distribué à peu près la même chose que les revenus réels de la population.

Par analogie, nous pouvons construire une courbe d'offre.

La courbe d'offre dans ce cas est le nombre d'usines à quels prix sont prêts à produire un produit d'une qualité donnée.

Si nous prenons 50 plantes, la courbe est obtenue avec un grand nombre de défauts, et avec un grand nombre elle tend vers une ligne droite.

image
Courbe d'approvisionnement pour k = 50 usines

image
Courbe d'approvisionnement pour k = 1000 usines

Pour obtenir une courbe d'un manuel, a) de nombreux vendeurs sont nécessaires, b) une distribution uniforme au prix coûtant.

Ce n'est pas évident, intéressant et nécessite une interprétation supplémentaire.

Donc, la première victoire.
Nous avons quelques pâles similitudes entre les courbes d'offre et de demande des manuels.

Nous établissons des inégalités et allons de l'avant.

Dans la plupart des cas, pour les distributions, j'ai établi des distributions gamma (qui sont «à queue»):

  • revenus des citoyens (voir le tableau ci-dessous, salaire moyen 25, minimum 5, maximum 160)
  • capital de démarrage des usines (voir graphique, la logique est la même, l'écart est moindre)
  • capacités de production des usines (limite de qualité de 2 à 30, coût principal - de 1 à 5)
  • les chances d'une modernisation réussie (mais ils sont distribués normalement)


image
( , — , )

image
( , — , )


Si nous n'avions aucun changement, la modélisation à long terme n'aurait pas beaucoup de sens. La modernisation signifie que les usines tenteront de se faire concurrence. Ceux qui ont de grosses ventes (capitaux de départ, bonnes conditions) ne pourront pas se reposer longtemps sur leurs lauriers, les concurrents se rapprocheront rapidement du prix et de la qualité des produits manufacturés.

Cependant, il est rapidement devenu évident que les usines avaient besoin de «mémoire». Il arrivait souvent qu'une usine prospère entame un cycle de modernisation négative et perd tout.
Par conséquent, j'ai dû ajouter cette logique à l'algorithme: s'il y avait des ventes avant la modernisation, et après qu'elle ait disparu, le prochain cycle de modernisation sera au format «tout faire reculer».

Paramètres de la première émulation sérieuse


Conditions de départ:

  • nombre d'habitants, N = 2000
  • nombre de plantes, k = 50
  • , R=30
  • -

Le résultat est écrit dans deux fichiers: un journal des citoyens et un journal des usines.

Données du premier journal:

image

id est l'id des biens achetés (il aurait dû être appelé normalement)
citizen_id est le numéro unique du citoyen,
période est le numéro du tour d'émulation de l'
argent est son salaire dans ce tour,
qualité et prix sont la qualité et le prix des biens qu'il a achetés dans ce tour (-1 si je n'ai rien acheté)

Deuxième journal

image

id est l'id de l'usine, la
période est le numéro du cycle d'émulation, le
capital est le capital de l'usine dans ce cycle,
pur est le nombre de ventes dans ce cycle, le
prix est le prix de vente
, la qualité est le coût et qualité respectivement
retard - données du dernier cycle

Il semble temps de regarder les résultats.

Voir les résultats


Quel résultat voulez-vous voir en premier? Probablement combien d'usines ont fait faillite, n'ayant pas mis sur le marché une offre intéressante.

Le résultat est le suivant.

  • Ils ont complètement fait faillite (sont passés à moins) - une usine. Triste mais vrai.
  • Pas d'argent pour la modernisation - 45 usines. Il est presque ruiné. Mais si soudain une demande pour leurs biens apparaît soudainement, ils pourront théoriquement s'en sortir.
  • Il y a du capital, pas de vente - 3 usines. Une fois, tout allait bien avec eux, mais ensuite leurs concurrents les ont retirés.
  • Il y a du capital, il y a des ventes - 2 usines. L'un vend des produits coûteux de qualité maximale, l'autre - une qualité acceptable très bon marché. Conspiration du cartel, division du marché, c'est tout.

Au moins une vente en 30 tours comptait 11 usines.

La dynamique est un peu plus compliquée. Il y a beaucoup de données.

Avec ces usines où les ventes n'ont pas fonctionné, comme dans les familles heureuses - tout est à peu près la même chose. La différence réside uniquement dans la vitesse de chute.

image
La dynamique des changements dans la capitalisation de ces usines qui n'avaient pas de ventes: tout le monde est parti de conditions de départ différentes, a dépensé des sommes différentes pour la modernisation, mais il n'y a qu'un seul résultat: tout le monde est tombé «à zéro» ou pataugeait autour de lui.

C'est plus intéressant, mais aussi plus difficile avec des «familles» plus heureuses - qui avaient encore des ventes.

image

Nous avons un champion qui se porte bien (id = 11) - il y a des ventes, le capital augmente. Mais pour trouver votre public, il a fallu 7 mouvements.
Le seul concurrent avec des ventes (id = 0) n'a pu atteindre que la troisième place en termes de capital. La deuxième place (id = 20) du 10e tour repose sur ses lauriers et perd lentement de l'argent. Les autres perdent de l'argent plus rapidement.

Il convient de noter que, selon les conditions initiales, nos dirigeants occupaient une position différente. La deuxième place en capitales "au final" (id = 0) était le leader absolu du capital initial, le "vainqueur sur le marché des biens de consommation" (id = 20) était dans le peloton de tête des leaders, mais le "champion" n'occupait que la 11ème place dans les accumulations initiales.

Il semble toujours intéressant de voir la dynamique des ventes par elles-mêmes.

image
Dynamique du nombre de ventes par usine.
Horizontal: nombre rond. Vertical - le nombre de consommateurs (sur 2000) qui ont effectué des achats (différentes usines ont des nuances différentes).


À quoi devez-vous faire attention?

Premièrement, lors du premier déménagement, tous les résidents ne pouvaient pas se permettre d'acheter au moins quelque chose (évidemment, ce sont des personnes à revenu minimal). Assez rapidement, ce nombre est tombé à zéro, puis a de nouveau chuté, puis 100% de l'offre a été atteinte.

Deuxièmement, une sorte de compétition était assez longue. Au premier tour, 6 usines avaient des ventes, au quatrième - 7, au quinzième - 4. Pendant longtemps, il y avait 3 vendeurs (dont un avait des ventes très microscopiques) et ce n'est que par le mouvement 27 qu'il a finalement été «retiré du marché».

Cela semble-t-il la peine de se laisser emporter par «l'erreur du survivant»?

Regardons nos champions plus en détail?

Id = 11 (top 1 des ventes et du capital) «provenant de la distribution» avait une qualité acceptable, mais un prix élevé (prix = 37, avec un salaire médian de 27,5, c'est-à-dire que la plupart n'avaient pas les moyens d'acheter ces produits). A obtenu 8% du marché. Réalisé une modernisation généralement acceptable - augmentation de la qualité et augmentation du prix. Vous n'avez aucune vente. Annulées. A obtenu près de 30% du marché (évidemment, les échecs des concurrents ont aidé ici). Une mise à niveau parfaite - une qualité accrue et un prix réduit. Hélas, les ventes ont été nulles à ce moment-là, les offres sont encore meilleures. Pour obtenir des ventes, il a fallu une série de 4 mises à niveau «du moins pas de retour». Au neuvième mouvement, l'offre avait déjà l'air géniale - un produit avec une qualité de 43 pour 21 (les utilisateurs l'ont noté, ce qui lui donne les deux tiers du marché). Mais une forte augmentation des prix - et encore une fois aucune vente. Puis trois tendances systématiques: la qualité est meilleure,le prix est plus bas, les ventes sont plus élevées.

image
Dynamique des changements dans les principaux paramètres de l'approvisionnement d'usine id = 11 (top-1 en ventes et en capital).

Le sommet de la «carrière» est de 21 mouvements, 99% du marché, mais cela vaut la peine d'augmenter un peu le prix - et les concurrents sont là.

Le seul survivant des ventes, à l'exception du leader, avait des prix bas et une qualité médiocre dès le début. Les ventes ont été irrégulières, le principal vecteur de modernisation a été la baisse des prix. Il n'a reçu de stabilité qu'au 25e coup, quand avec une qualité de 31, il a pu vendre des marchandises pour 3. Depuis lors, il a fermement pris sa place et s'est battu avec succès pour la «classe moyenne inférieure».
Le pic de la «carrière» est le dernier mouvement, 41% du marché.

Je me demande ce qui se passerait si la simulation durait quelques dizaines de coups de plus?

image
La dynamique des changements dans les principaux paramètres de l'offre d'usine id = 0 (top-3 en termes de capital, a des ventes à la fin de la simulation).

Le top 2 actuel en termes de capital (id = 20), qui n'a pas eu de ventes au cours des 10 derniers tours, était le leader du capital de démarrage (il ne pouvait donc pas tout perdre en 30 mouvements), il produisait des biens modérément pauvres et modérément bon marché. Une modernisation réussie de la qualité nous a permis de réaliser de bonnes ventes et de les conserver assez longtemps. La détérioration de la qualité n'a pas affecté le revenu pendant longtemps, car le prix était en baisse. Tout s'est terminé au coup 20. Une bonne mise à niveau n'a pas enregistré. Il est probablement dommage d'avoir 10% du marché stable, en même temps d'améliorer la qualité et le prix et de perdre des ventes (id = 0 est sorti avec une mise à niveau encore plus efficace).

Aucune autre action n'a aidé à retourner l'ancien public ou à en trouver un nouveau. Cependant, l'usine est séparée de la ruine complète par 8 à 20 tours. Assez de temps pour enfin avoir de la chance.

image
Dynamique des changements dans les principaux paramètres de l'id de l'offre de l'usine = 20 (top 2 en termes de capital, n'a pas eu de ventes au cours des 10 derniers tours).

Il semble qu'un schéma soit en train d'être tracé. Les usines qui offrent de meilleurs produits à bas prix sont en plein essor. Les autres se meurent.

Voyons comment le marché a changé de la part du consommateur en 30 mouvements.

image
Rapport qualité / prix au stade initial. Il existe 50 offres de produits sur le marché.
Horizontalement - le prix du produit, verticalement - sa qualité.
Le bleu indique le «choix de l'utilisateur», c'est-à-dire ces produits qui ont eu des ventes dans ce cycle.


Ici, vous pouvez voir clairement comment les usines sont dans des conditions inégales. Quelqu'un peut ne rien faire et avoir de bonnes performances. Les usines, cependant, «du coin inférieur droit» auront besoin de beaucoup plus d'actions pour trouver leurs clients.

Comment l'image changera-t-elle à la fin de la simulation?

image
Rapport qualité / prix à la fin de la simulation. Le bleu indique la «sélection de l'utilisateur».

Si au début la majorité achetait des biens de qualité 26 pour 18 (en même temps il y avait ceux qui achetaient des biens de qualité 30 pour 42 et des biens de qualité 15 pour 7), alors à la fin la majorité achète des biens de qualité 57 pour 24 (et en partie - des biens de qualité 28 pour 1.16 ) Il y a un changement!

Et à quoi cela ressemblait-il dans la dynamique?

image
La dynamique de l'évolution du prix des biens vendus.
Horizontalement, le nombre rond, verticalement - le prix de vente, chaque usine est marquée dans une couleur distincte, plus le rayon du cercle est grand, plus le volume des ventes est important.


Fait intéressant, dans cette simulation, le segment de prix «premium» (à cause duquel il n’était pas très utile de surveiller le prix moyen ou la qualité moyenne) a disparu en tant que tel.
Cela était dû au fait que la qualité du «marché de masse» était assez rapidement égale à la qualité des «produits haut de gamme».

image
Dynamique des changements dans la qualité des marchandises vendues
Numéro horizontal du rond, vertical - qualité du produit, chaque usine est marquée d'une couleur différente, plus le rayon du cercle est grand, plus le volume des ventes est important.


Ceux. du point de vue de l'utilisateur, cela s'est amélioré. La théorie triomphe.

Voyons maintenant comment les usines ont commencé à vivre. Le fait que la majorité n'ait pas fonctionné est compréhensible. Je me demande quelles sont les chances de faire une bonne action (baisser les prix, améliorer la qualité) et obtenir une amélioration des ventes.

Donc, modernisation n ° 1: réduction des prix.

Selon la condition, la chance d'aller dans la bonne direction est de 25% (le même montant - dans la direction opposée, dans d'autres cas, la modernisation sera sur un autre paramètre).

Si vous avez tout fait correctement, les chances d'améliorer les ventes seront de 14% (43 résultats sur 310) et encore 5% de ce qui va empirer (mais également 3% des chances d'améliorer les ventes avec la hausse des prix).
Cela est presque toujours dû à une mauvaise position de départ. Mais à plusieurs reprises, cela était dû au fait que les concurrents ne se sont pas arrêtés.

Modernisation n ° 2: amélioration de la qualité.

Les chances d'aller dans la bonne direction sont les mêmes.

Les chances d'amélioration dans le cas d'actions correctes sont les mêmes de 14%, mais les chances de détérioration sont plus élevées - 9% (et 7% de chances d'amélioration en se déplaçant dans la mauvaise direction).

Cela ne semble pas être un effet mathématique. Peut-être juste un jeu de petits nombres.

Il y a encore une question.

Nous avons «survécu» à quelques usines, la plupart ont fait faillite. Est-ce inévitable?

Cela vaut encore quelques simulations, mais il semble que oui.

Seule la question n'est pas dans le marché, les lois économiques et les statistiques. Le point est l'algorithme de sélection.

Nous avons maintenant le choix d'un utilisateur - une fonction claire de son salaire, de son prix et de la qualité de son produit. Par conséquent, un produit qui est pire que le millionième idéal dans le modèle actuel n'a aucune chance - tous les 100% du marché iront au produit idéal.

Dans la vie réelle, des facteurs aléatoires influencent le choix d'un utilisateur. Ils pourraient être déposés.

C'est tout pour le moment.

Conclusions brièvement


Conclusions non économiques:

  • Jouer avec de tels modèles est amusant
  • Les données peuvent être tordues de différentes manières.
  • Eh bien, quand tout est promis

Constatations économiques:

  • Il semble que dans le modèle économique classique les inégalités des conditions de départ soient inhérentes
  • Des courbes d'offre et de demande, similaires à la formation, peuvent être construites, mais ce seront des courbes (plutôt que brisées) avec un très grand nombre d'acheteurs et de vendeurs
  • En général, les principaux points de la théorie (la concurrence entre les vendeurs conduit à de meilleures conditions pour les acheteurs) sont corrects
  • Les conditions de départ affectent fortement le résultat final, mais ne le prédéterminent pas
  • ( “ ” “-” )
  • ,


  • ( )
  • ,
  • - ( )
  • “ ”,

All Articles