Davide Nigro

Computer Science and Simulation for Economics

Project work on

"Consumption and labour."


The applet requires Java 1.4.1 or higher. It will not run on Windows 95 or Mac OS 8 or 9. Mac users must have OS X 10.2.6 or higher and use a browser that supports Java 1.4. (Safari works, IE does not. Mac OS X comes with Safari. Open Safari and set it as your default web browser under Safari/Preferences/General.) On other operating systems, you may obtain the latest Java plugin from Sun's Java site.

created with NetLogo

view/download model file: consumption_work.nlogo


This program models a closed economy in a bidimensional world 20x25.
This world is made up of two kind of agents:

- enterprises <--> patches (between 2 to 500)
- people <--> turtles (between 1 to 1000)

Enterprises produce and sell products, morevoer they can decide on their own the appropriate price.

People have three roles: shareholders, workers and customers.
They are owners of the enterprises where they work and from which they acquire consumer goodses.
Moreover they get two kinds of income:
(a) not-working-income (from enterprises' profits)
(b) a salary (because they work in those enterprises)


Each customer has its own price limit:
if the price is less or equal to the consumer's price limit, the customer decides to buy the product, otherwise he goes to another shop.

When a customer buys something, both its price limit and the markup of that enterprise on the price increase, otherwise they decrease.

Every consumer moves in the world until it succeed in carrying out a purchase.


The user can decide the number of individuals, the total product of the previous period and the markup on the price; while the number of enterprises, the salary of the workers and their productivity can be changed anytime during the simulation.

Agents' creation and the setup of every variable is made by pressing key SETUP.
In order to start the simulation it is necessary to press key GO.
The key Clear All allows to cancel the simulation.
The key STEP-once allows the simulation to go on for just one step: people will move around the world until they buy something once.
To begin the simulation, the user has to press SETUP, so that enterprises are created and people are spreaded all around the world.

"Shocks" are buttons allowing to create a shock in customers' price limit and enterprises' markup.


What happens to the market price if you change the number of enterprises?
What if you change salary or productivity?
Can a shock in customers' price limit increase the markup?


A relatively high number of enterprises leads to a reduction of the average markup and of the profit, both coming closer and closer to zero.
A number of enterprises relatively low can have a bargaining power vs customers, so leading the markup to higher values (according to the accepted maximum level for customers).
An increase of the salary makes the production costs to grow, so the market price inceases.
An increase of the productivity reduces the production costs and leads to lower market price.
Taxation reduces the total product, since customers have less money to spend.


This model can be extended in many ways.
For instance you could try to allow the model to change the number of customers during the simulation (as it's possible with enterprises).
Can you include banks and the financial market?
What if people can do something when they don't buy? (including free time)
Is there any different way to use money the State takes from taxes?