Towards a Descriptive Simulation of Russian Food Supply Chains

Bruce Edmonds
Centre for Policy Modelling
Manchester Metropolitan University


Work in progress towards a descriptive social simulation is described.  The phenomena of concern are the systems that supply food to those in Russia – Russian food supply chains.  The ultimate aim is to represent, within a single simulation framework, the situations in this regard at different stages in recent history, namely the situations in:  the recent Soviet era; immediately after the collapse of the Soviet system; and the recent situation.  The design of this simulation has been informed by consultations with experts, following a design/implement/present/redesign cycle.  This process is on-going so that what is presented is a snapshot of the current state of the model.  Some preliminary results of the model are presented illustrating some the characteristics of this.


The last 25 years have been a time of rapid change for the countries that used to make up the Soviet Union.  One area that has changed, and is continuing to change, is the organisation of food distribution and supply.  In particular, how shops obtain food from suppliers and/or manufacturers has undergone marked shifts.

In the Soviet era, instead of a capitalist system of businesses and/or markets that act to match up the demand from shops to the supply from producers, there was an intermediate layer of institutions that attempted to meet demand by essentially bureaucratic methods.  In other words these institutions would try to plan how to satisfy demand, making decisions as to the allocation of goods.  On the whole they did not actually deal with the transportation or storage of food as might be done by a capitalist intermediary (e.g. bulk wholesaler), but only dealt with the matching process.

Since then there has been an increasing trend in shops by-passing these intermediaries and going straight to the manufacturers for their supplies.  This has enabled them to ensure some of the continuity of supply necessary for their business. Other issues over this time have been the shortage of goods and the segmentation of the supply into different quality levels.  For more on this case study see (Kuznetsov 1999, Kuznetsov and Kuznetsova 2003).

In this paper I present an agent-based simulation of supply chains, where quantities of goods and money are tracked as they are exchanged between agents (representing suppliers, intermediaries, shops and consumers).  Thus in all transactions the order of operations is important (e.g. whether an order is sent before payment received) as are the delays inherent in the processes (sending goods from supplier, or producing new goods at the supplier, collecting money from an invoice). 

The purpose of this structure is to allow the determination of the behaviour of the agents to match the accounts of domain experts and anecdotal evidence indicates.  Thus, for example, one can explore the different strategies that consumers might use to determine where they might shop, using such heuristics as reputation passed along social networks as well as price and availability.  Thus it follows the ideas of (Simon 1962) the prototype of (Akman and Ersan 1996) and the practice of (Rouchier 2004) in their ambition to include some of the more “mundane” aspects of economic transactions.  The point it that with agent-based modelling it is not necessary to artificially simplify their behaviour to the extent that, say, neoclassical economic theory, does.

The Model

Outline of Model Design

This model attempts to be more descriptive than most previous versions of supply-chain models which tend to be abstract and simple (an exception being Taylor 2003).  In other words tending more towards the KIDS (“Keep it Descriptive Stupid!”) than the KISS (“Keep it Simple Stupid!”) approach (Edmonds and Moss 2005). 

This is work in progress – there have been a couple of iterations of model development: a model is produced; this is presented to domain experts who give detailed feedback both on model set-up and the expected outcomes; the model is changed to take the feedback into account.  Thus the constraints upon the model design are, and will continue to, develop.

The core of the present set of criteria that the model attempts to instantiate are as follows:

·         all actors; batches of goods; and money are individually represented;

·         all transactions and flows between actors in terms of products, money or communication are temporarily embedded – they take time and their sequencing is important;

·         the “cognitive processes” that the agents use are mundane and procedural – they match simple accounts of planning and action selection behaviour (more detail below);

·         all products and money are conserved throughout the model – there is no ‘magic’ creation of things;

·         there can be no assumption that actors seek to optimise (or even prioritise) lowest price, profit or cash flow;

·         all actors are much more affected by limitations in supply rather than demand – the system is characterised by continual shortages.

Figure 1.  The agent hierarchy in the model.   Agents lower down inherit behaviour from those above and can add new behaviours.

The whole model is built on top of an accounting structure which keeps track of all goods and money.  Goods enter via the suppliers by debiting them from the “source” and wasted or consumed goods go to the “sink”.  The source and sink and dummy agents to complete the structure.  The accounting structure: aids the enforcement of the conservation of goods and items; constrains the flows that are possible within the model (as specified by the modeller); aids error-checking; and aids the collection of information about the flows.  An illustration of the possible flow of goods (in version 1) is shown in Figure 2.  The flows of money are in the opposite direction between the substantive agents (manufacturers, intermediaries, shops and consumers).

Figure 2.  Structure of model (version 1) illustrating the flow of goods through the chain.  In version 2 there will also be the possibility of bypassing the intermediaries.

One of the advantages of adopting this, more descriptive, approach, is that the focus can be on the behaviour of the agents and their (joint) affect upon the outcomes and the qualitative nature of these outcomes.  Thus this facilitates the comparison of the model with real cases – something that would be almost impossible if we had adopted a "KISS" approach.  The disadvantages include the fact that the results are far more difficult to analyse into general forms.

The Goods

There are a fixed number of types of goods as well as a fixed number of levels of quality for those types.  These numbers are controllable by the modeller.  Thus if there are 3 types and 2 quality levels there will be 6 different products that are bought; sold and transported through the supply chain.

The idea is that consumers need some of all types of goods, and seek to ensure they get some of each (if possible).  Higher quality goods are more costly to produce and can only be produced in lower quantity than lower quality goods.  In the examples discussed below there are 3 types of goods and either 1 or 3 levels of quality.


The consumers are the most complex of the agents in this model. 

Consumers get paid each 7 cycles a regular wage, but different consumers will receive different amounts of money.  They probibilistically consume amounts of each type of product each cycle (or all of that type if the consumption of that amount would have been greater than the amount they had).

They collect information about prices and availability of products.  If they are satisfied with the last shops they shopped at they collect information about the products in these shops, otherwise they try shops that their friends have recently shopped at, failing both of these they try a random shop.  If they have been short of all goods for 5 cycles they try shops at random that they have not recently been to.

They estimate their needs over the next 7 cycles.  This is a simple case of multiplying the probability of product consumption by the consumption amount for that product time 7, and subtracting any existing stock levels from this amount.  Since the parameters of the simulation are chosen so that there are continual shortages, consumers are usually seeking to buy all types of stock.

They have an aspiration level for each product which represents the level of quality of product they would prefer.  If the amount of cash they have becomes much greater than the estimated cost of purchasing stock of their desired quality to meet their estimated need then they increase the aspiration level for one of the product types.  Conversely if the amount of cash is insufficient for this, they decrease the aspiration level for one of their product types.

They decide where to try and shop for each product based on (in order or importance): sufficiency of stock, availability of their preferred quality level, the amount of the product in the shop (because if there is not much it is likely to last until they buy some); the price; and finally the quality level. 

They then join the queues at these shops to try an enact their plan, which is moderated by what they can afford.


Shops attempt to stock all types of stock, buying when their stock falls below a certain minimum level, ordering new stock to take them back up to a higher desired level (moderated by its availability and what it can afford).  Shops place orders with an intermediary (or producer if this is allowed) choosing with whom to place their orders depending upon (in order of importance): sufficiency of stock to meet their needs; the amount of stock it has; and finally the price.

Prices are determined by applying its individual profit margin to the last cost of purchasing each product.  If active pricing is enabled, the profit margin is either increased or decreased depending upon each product’s popularity.

Every 14 cycles it reassesses each product’s popularity, either increasing it or decreasing it by one if the demand is much greater than the supply (or vice versa).

Shops do not accept orders but deal with consumers in the order in which they queue, selling to each in turn what they ask for, until all their stock is gone, or there are no more customers that cycle.


Intermediaries are very similar to shops in their buying behaviour, except that they re-evaluate the popularity of its products every 21 cycles, and can only buy from producers.  They will, of course, have much bigger capacities in terms of stock.

In terms of selling they set their prices in a similar manner to that of shops.  Their sales practice differs in that they accept and queue orders dealing with orders in order of their arrival when they have stock to do so.  They will dispatch partial fulfilments of orders if this is all they can do, and try to fulfil the rest later.


Producers are very similar to intermediaries, except that they do not buy stock from anyone but produce it when they anticipate that their stock level will fall too low.  There is a considerable lag between the decision to produce food and its arrival ready to be dispatched.

It has costs in terms of fixed costs to maintain the apparatus of production and a marginal cost per unit of good produced.


All results here are preliminary.

The results are over 112 independent runs, that is 7 runs each of 8 combinations of the options: with and without by-passing the intermediary allowed; with 1 or 3 intermediaries; and with and without adaptive pricing.

Firstly the active pricing option made no significant difference to the results – this is unsurprising due to the shortage of goods in the system and the greater precedence of adequate supply over cost in agents’ action choices.  Thus in the results presented below we will not analyse them by this factor but merely aggregate those runs with active pricing with those without, leading to 14 runs of each of the other 4 combinations of factors.

Table 1 shows the average total stock of the consumers for 1 or 3 intermediaries and whether it is possible to by-pass the intermediaries or not.  That is the total amount that each consumer has each cycle is calculated and this is averaged over the consumers, runs and cycles.


1 Intermed.

3 Intermed.

All through Intermediary



Poss. to Bypass Intermediary



Table 1.  Average (total) stock of consumers (last 200 cycles)

The possibility of by-passing the intermediary seems to allow a greater total of goods to get to the consumers, although this is less marked when there are 3 intermediaries rather than 1.  When goods have to go through the intermediaries more intermediaries facilitates the transmission of goods (though not as much as by-passing them).

Table 2 shows the levels of shortages that result in the same conditions as Table 1.  This measure is 0, 1, 2 or 3 for each consumer at each cycle depending upon the number of food types that they have none of.  This is then averaged over runs, consumers and (the last 200) cycles.


1 Intermed.

3 Intermed.

All through Intermediary



Poss. to Bypass Intermediary



Table 2.  Average number of shortages of consumers (min=0; max=90, last 200 cycles)

In the case of 1 intermediary the ability of by-passing it decreases the number of shortages that the consumers ‘experience’, but when there are 3 intermediaries there are slightly more shortages.  This contrasts with the increased amounts of goods indicated in Table 1 – it seems that with 3 intermediaries, even though bypassing them allows more goods through it increases the number of shortages.  Thus it seems that although intermediaries can act to slow the provision of goods and ‘adsorb’ some of the goods into its store, they can also act in reducing inequalities of supply to consumers so there are fewer shortages.

In both Table 1 and Table 2 we can see that if by-passing the intermediary is allowed then increasing the number of intermediaries from 1 to 3 has a slightly deleterious effect upon the provision and distribution of goods to consumers.  It seems that the increased number of intermediaries here allows for them to ‘divert’ some of the goods into their stock for a time, hence making the supply chain slightly less effective.  It is possible that, in this model, the advantages to shops of a single source are insufficiently ‘costed’.

The four graphs at the end of the paper (Figure 3, Figure 4, Figure 5 and Figure 6) show the average trajectories of the total stocks for the four kinds of principle agents: producers; intermediaries; shops and consumers, for combination of 1 or 3 intermediaries; and with by-passing the intermediary allowed and not.  As with the tables above these are over 7 independent runs each.  These are provided for illustration and completeness.  The fluctuations in individual runs are much greater than those for these average runs, due to the prevalent ‘bull whip’ effect (Lee, Padmanabhan and Whang 1997).

Related Work

There are at least a couple of projects that aim at agent-based simulations of supply-chains.  (Swaminathan, Smith and Sadeh 1998) describe a simulation framework which provides a ready-made template for supply-chain agents to facilitate the process of simulating chains.  This looks promising, although it looks like it makes assumptions about the kinds of behaviour a supply chain agent might use, e.g. by inventory-control policies.  However, such assumptions and structures can not be used in this case because it is a situation in which either these assumptions do not hold or they are only in the process of emerging – building them in would mean that their emergence can not be captured.

(Strader, Lin and Shaw 1998) describe an agent-based simulation of the supply chain internal to an organisation (basically that which constitutes what might be thought of as a ‘production line’), to compare the different methods in which a company might organise its production.  In this paper I am more seeking to

Richard Taylor’s thesis (Taylor 2003a, 2003b) is a relatively-well validated agent-based model of a partially-electronic supply chain, where older intermediaries were being by-passed.  However the scenarios are so different that comparison is difficult.

Future Work

There is obviously still a lot of work still to be done!  In no particular order, feature that need to be included in the implementation are:

·         The entrance and exit of agents, particularly of intermediaries and shops.

·         The existence of different qualities of goods that is associated with different intermediaries to represent the imported goods that arrived in the wake of the collapse of the soviet era.

·         An alternative ordering of priorities that may come into play when there is a sufficiency of goods.

·         The presence of cash shortages.

·         Making the old intermediary more realistic – namely: so that it does not store any goods but merely routes them; so it tends to allocate fairly fixed proportions of the outputs of producers to shops.

·         The addition of a relatively unregulated market where entrepreneurs and local producers can sell their goods.

The structure of the model will make these fairly easy to implement.  The challenge here (as in other KIDS style models) is to manage the complexity and add sufficient checks into the code so that some reliability can be attributed to it.

Finally, the validation of the results will be extremely interesting.  We have some data in the form of the results from a survey of firms in Russia about their supply chain relations, with which to compare the results.


The aim is to move towards a simulation which reflects, as much as possible, what we know about the phenomena of concern.  This is an absurdly ambitious task, and will most likely fail, however I hope that much may be learnt during the attempt.

The purpose of the model (now or at later stages) is not to predict what will happen but rather, through the exploration of what might have happened, reveal unresolved and/or hidden issues which otherwise would not have come to light.  This will hopefully inform future observation and question formation, and thus further our understanding of such phenomena (Moss and Edmonds 2004). 

Such issues (the effect of centralised planning; lack of flexibility; seeking to eliminate supply risk etc.) have an importance that goes far beyond this specific case.  In recent years in our economy there has been a similar trend – that of selective bypassing established intermediaries and shops via use of the internet (Taylor 2003).  Indeed versions of these issues are as important to the organisation of distributed computer systems as real supply chains.


Thanks to all those with whom I have developed these ideas and this model, including: Scott Moss, Richard Taylor, Andrei Kuznetsov, Olga Kuznetsova, Emma Norling, and Rodolfo de Sousa.


Akman, V. and Ersan, M. (1996) Commonsense aspects of buying and selling. Cybernetics and Systems, 27(4):327-352.

Edmonds, B. and Moss, S. (2005) From KISS to KIDS: an ‘anti-simplistic’ modelling approach. In P. Davidsson et al. (Eds.): Multi Agent Based Simulation 2004. Springer, Lecture Notes in Artificial Intelligence, 3415:130-144.

Kuznetsov, A. (1999). The destruction of the Soviet economic system: An insiders' history. Europe-Asia Studies 51(2): 355-356.

Kuznetsov, A. and O. Kuznetsova (2003). Institutions, business and the state in Russia. Europe-Asia Studies 55(6): 907-922.

Lee, H. L., Padmanabhan, V., and Whang, S. (1997) The Bullwhip Effect In Supply Chains. Sloan Management Review, 38(3):93-102.

Moss, S.  and Edmonds, B. (2004) Towards Good Social Science.  EPOS, the Cross-Disciplinary Workshop on Epistemological  Perspectives on Simulation,  Koblenz, 1-2 July 2004.

Rouchier, J. (2004) Interaction Routines and Selfish Behaviours in an Artificial Market - Transferring field observations of a wholesale fruits and vegetables market into a multi-agent model.  CPM report 04-130.

Simon, H.A. (1982): From substantive to procedural rationality. In H.A. Simon: Models of bounded rationality, Volume 2: Behavioral economics and business organization. MIT-Press: Cambridge, MA.

Strader, T. J., Lin, F-R and Shaw, M. J. (1998) Simulation of Order Fulfillment in Divergent Assembly Supply Chains. Journal of Artificial Societies and Social Simulation 1(2).

Swaminathan, J. M., Smith, S. F. and Sadeh, N. M. (1998) Modeling Supply Chain Dynamics:  Multiagent Approach.  Decision Sciences, 29(3):607-632.

Taylor, R. (2003a) Agent-Based Modelling Incorporating Qualitative and Quantitative Methods: A Case Study Investigating the Impact of E-commerce upon the Value Chain. ESSA 2003, Groningen, the Netherlands. 

Taylor, R. (2003b) Agent-Based Modelling Incorporating Qualitative and Quantitative Methods: A Case Study Investigating the Impact of E-commerce upon the Value Chain.  Doctoral thesis, Manchester Metropolitan University, 2003.

Author biographies

Bruce Edmonds is a Senior Research Fellow at the Centre for Policy Modelling.  For more about the Centre see, for more about him and his publications see

Figure 3.  The average total stocks of each layer of the supply chain (Blue-Producers; Pink-Intermediaries; Yellow-Shops; and Cyan-Consumers) with: no by-passing of intermediaries allowed; one intermediary.

Figure 4.  The average total stocks of each layer of the supply chain (Blue-Producers; Pink-Intermediaries; Yellow-Shops; and Cyan-Consumers) with: by-passing of intermediaries allowed; one intermediary.

Figure 5.  The average total stocks of each layer of the supply chain (Blue-Producers; Pink-Intermediaries; Yellow-Shops; and Cyan-Consumers) with: no by-passing of intermediaries allowed; three intermediaries.

Figure 6.  The average total stocks of each layer of the supply chain (Blue-Producers; Pink-Intermediaries; Yellow-Shops; and Cyan-Consumers) with: by-passing of intermediaries allowed; three intermediaries.