Simulating Socialism (3): Mathematically Derived Valuations Jan Philip Dapprich This is the third part of my series “Simulating Socialism” (Part 1, Part 2) in which I give an outline of my simulation of a socialist economy. In the previous parts we saw what the overarching structure of the simulation is and how an optimal production […]
Simulating Socialism (4): Consumption
Von Jan Philipp Dapprich
In previous parts of this series (pt. 1, 2, 3), I have explained how the model of socialism I am proposing calculates optimal production plans and valuations of consumer goods. In this part, I will explain how consumer products are distributed to consumers and how production is adjusted in response to consumer demand.
Individual consumers are given a certain amount of credits, which can be redeemed for consumer products. The prices at which credits can be redeemed for specific products are adjusted depending on supply and demand of these products. Prices of individual products can then be compared to their valuations to decide whether production of a product should be increased or decreased. That is why we need the mathematically derived valuations I explained in the previous post!
In the real world, there are real people who make choices about what they want to eat etc. Even a socialist society that relies heavily on computer algorithms should not take those choices away from people. It is unlikely that a computer will know better than you what you want to eat any time soon.
That doesn’t mean anyone can consume whatever they want. There are physical and environmental limits to what we can produce, so even with the most efficient production and planning techniques there will be a finite amount of stuff for people to enjoy. Producing more might also increase the amount of time people have to work in production, so that’s another reason we can’t or shouldn’t just produce as much as anyone could possibly want. Hopefully, we will always be able to produce enough to ensure a good standard of living to anyone and not have to worry about things like climate change affecting our supply chains. But it’s unreasonable to allow for unlimited consumption which will put unjustified pressure on resources, the environment and us (workers).
In order to ensure that the finite consumer products we can produce are distributed in a reasonable manner, each consumer should be given a certain amount of credits that they can redeemed for consumer products of their choice. This allows consumers to get the products they think are most important to them. It allows us to distribute products fairly, by giving an adequate amount of credits to each individual. This could be an equal amount to each individual, or it could also vary depending on factors such as individual needs or labour contribution. But I will not discuss here what the best distribution of credits is. For the purpose of my simulation I have simply assumed that everyone gets exactly the same amount of credits. This is meant as a simplification and doesn’t necessarily have to reflect how it should be in real life.
Each product has to be assigned a certain amount of credits that need to be redeemed for it. Perhaps an apple will cost 1 credit, while an orange costs 2 credits and so on. From the perspective of the consumer this is very much like today’s money prices. From a macro perspective it is somewhat different, as credits are not exchanged like money. Once they have been used they are deleted and not passed onto someone else (for example the supermarket where you bought your apple). I nonetheless use the term “price”, as you are now aware of this difference and it is easier to use words we are already familiar with.
So what determines the price of an apple or an orange? Marx, in a similar proposal, suggested that such prices should depend on the labour value of a product. This can lead to serious problems as there might be significant mismatches between supply and demand. Perhaps there were only 100 oranges produced, but there are 200 people who want to redeem their credits for an orange. Since that is not possible, it means that in the end there will be some form of intentional or unintentional rationing. What decides whether you get an orange is no longer whether you want to use your credits for the orange, but whether you are first to show up at the supermarket. Credits would thus completely use their purpose.
To ensure that supply and demand are balanced, prices have to be adjusted. Should oranges go off the shelves faster than they are resupplied, the price has to be increased. This encourages consumers to consider other alternatives (such as apples). But if you still really want an orange, because you just hate apples, that’s fine too. You just have to pay a slightly higher price for those. The price at which supply and demand match is sometimes called the “market clearing price” and even though we are not talking about markets in the traditional sense (which involve exchange of commodities) I find it useful to adopt this term. Market clearing prices can be approximated be successfully adjusting prices depending on the mismatch between supply and demand. In my simulation prices are changed using a proportional controller with a factor of 0.3. This means that a mismatch between supply and demand of 10% will lead to a 3% change in price. In the simple cases that I have tested this leads to market clearing prices reasonably fast, but in reality, a more complex controller might be used to ensure that prices are always as close to clearing prices as possible.
4. Target Adjustment
Some people might already have thought to themselves: If people want more oranges, the solution is not to increase the price of oranges. You have to produce more oranges! And they wouldn’t be wrong. The purpose of the price changes is to distribute a given supply of consumer goods. This is necessary when production can’t be immediately changed to match changing consumer behaviour, as is the case with oranges, which take some time to grow. In the medium to long term, however, a high demand for oranges should certainly lead to more production of oranges. When we use market clearing prices, a high demand for oranges relative to current supply will be evident by a high price. A high price can thus be used as a signal to indicate that more oranges should be produced.
But high relative to what? Surely, a high price for a home computer should be different from a high price for an orange. So, what do we compare the price of a given product to? This is where valuations come in! Values ideally take into account that it is a lot harder and takes a lot more resources to make a computer than it takes to make a single orange. The labour value model of Cockshott and Cottrell proposes that we use the overall labour necessary to produce things as a cost indicator. My mathematically derived valuations instead rest on a calculation of what could be produced with required inputs instead (see part 3).
In order to make credit prices and valuations comparable, it is necessary to adjust values somewhat. This adjustment works through simple linear algebra and ensures that relative values remain the same, while the total adjusted value of all products equals the total credit price of all products. Once this is done prices and values of each products are compared and the entry in the plan target (see part 2) is adjusted accordingly. This means we don’t directly change how many oranges are produced, but the proportions at which things are produced, which are specified by the plan target. If previously apples and oranges where produced at proportions of 1:1, then this might change to 1:2. In my simulation I use an on-off controller for this. If the price of a good is higher than its adjusted value, then the entry in the plan target goes up by 1%. If it is lower the plan target entry for the product is reduced by 1%. Again, it might be wise to use a more complex control mechanism for a real economy. But this is what I found out worked reasonably well for the small sample economies that I studied using my simulation.
5. Consumer Model
As I said before, In the real world, there are real people who make choices about what they want to eat etc. My computer simulation doesn’t involve any real people, so I had to find some way to model the behaviour of consumers. For this I used a simple agent-based model. Each consumer is given 100 credits per day. It is than randomly determined what item the consumer wants to consider. Some items are more likely to be considered than others, which is determined by weights I assign to each product. If the consumer has enough credits left to purchase the item at current prices, she will do so. If not, she will consider another item. If she can’t afford her chosen item 5 times in a row, she will stop. This mostly happens when she has run out of credits.
Whether a consumer will consider an item does not depend on the price of the item. But whether the consumer will actually purchase the item does. At lower prices she is more likely to have enough credits left to be able to afford it. This yields some dependence of overall demand on prices. Even though the model is somewhat unrealistic (in reality you might refuse to buy something at an outrageously high price, even if you could technically afford it), it is sufficient for the purpose of my simulation. We can thereby study how my model of socialism adjusts production in response to (price-dependent) consumer demand. The consumer model would not be needed in a real economy, as that role would be played by real people! That’s why I am not terribly concerned about the obvious limitations of the consumer model.
I ran my simulation with a total of 1000 consumers. Using more is easy, it just takes the computer somewhat longer. I avoided this as it yields no real benefit and again, in a real economy we wouldn’t need this consumer model at all. To determine total demand the individual consumption choices of the agents are simply aggregated. This is then compared to supply to adjust prices, as explained above.
In the next part of this series, I will show some experimental results for the simulation for small sample economies. What I was most interested in is how my model would compare to the labour value model of Cockshott and Cottrell, which is why I created a second version of the simulation using labour values. In particular, I wanted to see how values and production would differ in the face of environmental constraints. How would prices and production change when the amount of CO2 emissions that are allowed is deliberately limited as part of environmental policy? In the next part, I will share what I found out.
In the second part of the series, Philipp Dapprich explains how production plans can be optimised through linear programming.
We can use computer simulations to illustrate how a socialist economy would work. In the first part of this series, we will take a look at the basics.