The Physics of Fashion Fluctuations


This Java applet (If you don't see anything above, please install
Java 1.4) simulates a model economy where N agents trade N(product-types) different types of products. Initially each agent is given a number of products equal to Richness N(product-types). For Richness>1 it is possible to obtain a state where all agents have fulfilled all their needs.

Each agent keeps a record of the last requests for goods he received in encounters with other agents. The length of this memory is given by " Memory-length". For each new encounter a new information replaces an old one.

Agents will accept products they already have in stock with a probability given by their individual memory records. Therefore the total demand for a product is associated to the number of times it appears on all memory lists. This total demand for the respective products is shown on the applet.

One trading event consist of selecting two random agents and allow them to trade either according to "need" or according to "greed":

  • Each agent build a demand list consisting of the product types he does not have in stock.
  • To trade according to greed he add one product to his demand list from his memory. The produuct is selected with a probability proportional to the number of times this product appear in his memory.
  • The two agents each select a random product from their respective demand lists and ask if their opponent have it in stock. If this is the case for both products, a trade is performed: one product for one product.
  • In addition one bit of memory flows from each agent to the other.
  • Finally there is a probability for producing a product given by "Production/trade" (which means replacing an old product with a new one). When this number is >0 the agent select to produce a product with a probability proportional to how much he wants it. When this number is <0 the agent just produce a random product.
Humans trade in order to obtain either what is needed, or to obtain what they think that other people need: They trade for need or for greed. This is simulated by this hugely simplified model of human activity in a market with many different product types.

Only trade of one product for one product is allowed. The agents also have a memory where they keep information about what other agents asked for in earlier encounters. At each step a given agent wants either what he does not have, or something that their memory tell them is desirable. As a result there is a positive feedback for the desirability of a given product among the agents.

In the applet we show the fraction of the total memory of all agents which are allocated to the respective products (each shown with a different color). This memory allocation is identified as the value of the corresponding product. This is because it is associated to the chance that somebody will accept it in a given trade. This value show persistent fluctuations where sometimes everybody agrees that a given product is highly desirable.


Donangelo and K. Sneppen, "Self organization of value and demand", Physica A 276 (2000) 572. (cond-mat/9906298)

R. Donangelo, A. Hansen, K. Sneppen \& S. Souza, " Physics of Fashion Fluctuations", Physica A, 287, 539 (2000).

R. Donangelo and K. Sneppen, "Cooperativity in a trading model with memory and production" Physica A 316 581-591 (2002).