# Rich get Richer vs Wealth Tax

### 1 collaborator

Rupert Nagler (Author)

### Tags

economy

Tagged by Rupert Nagler over 3 years ago

gini

Tagged by Rupert Nagler over 3 years ago

inequality

Tagged by Rupert Nagler over 3 years ago

taxation

Tagged by Rupert Nagler over 3 years ago

wealth distribution

Tagged by Rupert Nagler over 3 years ago

Visible to everyone | Changeable by everyone
Model was written in NetLogo 6.1.1 • Viewed 285 times • Downloaded 16 times • Run 0 times

# Rich get Richer vs Wealth Tax.nlogo

Author: Rupert Nagler, Jan 2020, nagler@idi.co.at

## WHAT IS IT?

"The rich get richer" - you can hear it everywhere today. But why? Playing with this model you will learn and understand the intrinsic workings of multiplicative growth and a possible remedy. We abstract economic transactions by simulating a bilateral coin game played pairwise by a set of turtles sitting on a blue 2d-world. The vertical position reflects their actual wealth, the horizontal position the turtle's unique who number. Currently playing pairs are pictured by a link. Lorenz Curve, Gini Coefficient and a histogram show the actual distribution of wealth. You can explore the effects of cumulative growth obscured by the misleading ergodic hypothesis in traditional economics and the benefits of cooperation induced by a form of wealth-tax. Idea influenced by Ole Peters, LML, see: https://ergodicityeconomics.files.wordpress.com/2018/06/ergodicity_economics.pdf

## HOW IT WORKS

• A fraction "select-ratio" of turtles throw a coin pairwise at each tick, the bet is a fraction "transfer-ratio" of the minimum of the wealth of both turtles.
• For the looser the bet is multiplied by "loose-mult" and then subtracted from his wealth. For the winner the bet is multiplied by "win-mult" and then added to his wealth.
• After all pairs have thrown their coins and their wealth was transferred, some redistribution in the form of a wealth-tax may be applied: If "tax-factor" is > 0 and wealth is > "tax-limit" a wealth tax (wealth * tax-factor) is subtracted. Then the collected wealth tax is redistributed evenly to all turtles or to the poor turtles below tax-limit, depending on the switch "redist-all?".
• So you can simulate the effects of cooperation thru risk-sharing between players.

## HOW TO USE IT

• Use the sliders to control the number of turtles "num-turtles" and the initial wealth "init-wealth".
• If you switch "random-init-wealth?" to "off" each turtle receives the equal "init-wealth" wealth. If you switch "random-init-wealth?" to "on" each turtle receives a random wealth between 1 and "init-wealth".
• Set the fraction of the minimum wealth of both turtles "leverage" to bet and the fraction of all turtles to play in one tick "selection-ratio".
• Set the multiplicative factors "loose-mult", "win-mult" (default: 1.0) to be applied to the transfer of the bet.
• Optional set a "tax-factor", "tax-limit", and "redist-all?"
• If you want bancrupt turtles to die, set "turtles-die?" to on.
• To initialize the simulation "setup".
• To play one round press "go-1", to play as long as you wish, press "go".

## THINGS TO NOTICE

• You see all turtles sitting on the black world area. Each turtle will go up or down vertically dependent of its current wealth after each tick.
• Each pair of turtles (link) engaged in throwing a coin is connected by a line.
• In the wealth-plot you see min, max, mean and median of the turtles wealth on a log10 scale.
• In the wealth-distribution histogramm you see the number of turtles in different classes of wealth.
• In the Lorenz Plot you see the actual shape of the Lorenz Curve.
• In the Gini Plot you see the value of the Gini Coefficient over time.

## THINGS TO TRY

• Try different values for multiplicative growth ("loose-mult", "win-mult"),
• Compare the wealth-distribution for no multiplicative growth (set both "loose-mult", "win-mult" to 1.0) to other values of multiplicative growth (eg. 0.6, 1.5)
• Try different "tax-factor"s and "tax-limits", switch "redist-all?" on/off.
• What effects can you see in the histogram, Gini Plot and Lorenz Curve?

## EXTENDING THE MODEL

• better visualization ideas?
• turtles get children and die of age
• implement inheritance tax

## NETLOGO FEATURES

• using turtle world to show turtle ranking by position,
• histogram on varying upper and lower bounds,

## CREDITS & REFERENCES

credit: computation of lorenz curve and gini index copied from: NetLogo models WealthDistribution

Wikipedia: Distribution of wealth, retrieved 12/2019 https://en.wikipedia.org/wiki/Distributionofwealth

Wikipedia: Lorenz Curve, retrieved 12/2019 https://en.wikipedia.org/wiki/Lorenz_curve

Wikipedia: Gini Coefficient, retrieved 12/2019 https://en.wikipedia.org/wiki/Gini_coefficient

Wikipedia: Ergodic process, retrieved 12/2019 https://en.wikipedia.org/wiki/Ergodic_process

Ergodicity Economics, Ole Peters and Alexander Adamou, 2018 https://ergodicityeconomics.files.wordpress.com/2018/06/ergodicity_economics.pdf

Entrepreneurs, Chance, and the Deterministic Concentration of Wealth, Joseph E. Fargione u.a., 2011 https://journals.plos.org/plosone/article/file?id=10.1371/journal.pone.0020728&type=printable

An evolutionary advantage of cooperation, Ole Peters and Alexander Adamou, 2018 https://arxiv.org/pdf/1506.03414.pdf

Capital and Ideology, Thomas Piketty, 2019 http://piketty.pse.ens.fr/files/Piketty2020SlidesLongVersion.pdf

Farmers Fable: Simulation benefits of cooperation, retrieved 12/2019 https://www.farmersfable.org/

Gier, Marc Elsberg, novel, blanvalet 2019 https://gier-das-buch.de/gier.php

Copyright 2020 Rupert Nagler, nagler@idi.co.at. All rights reserved. Permission to use, modify or redistribute this model is hereby granted, provided that both of the following requirements are followed:

• this copyright notice is included.
• this model will not be redistributed for profit without permission from Rupert Nagler.

Contact the author for appropriate licenses for redistribution for profit.

## Comments and Questions

Click to Run Model

```; Rich get Richer vs Wealth Tax.nlogo; Rupert Nagler Jan 2020

globals
[
gini-index-reserve ; actual gini %
lorenz-points ; list of lorenz-points
count-notax-turtles ; number of turtles paying no tax
; win-mult and loose-mult are global growthrates to introduce multiplicative growth
; for positive growth set loose-mult < win-mult
; additrive growth is interinsic as bet is moved from looser to winner
]

turtles-own [
wealth ; actual wealth of turtle
tax ; actual amount of wealth tax turtle has payed
]

to setup
clear-all
ask patches [set pcolor 73]
setup-turtles
set count-notax-turtles 0
update-lorenz-and-gini
reset-ticks
end

to setup-turtles
create-turtles num-turtles [
set color yellow
set shape "circle"
ifelse random-init-wealth? [ ; random distributuion
set wealth random-float init-wealth
][ ; equal distribution
set wealth init-wealth
]
set tax 0
; place turtle on plain according id(own) on x-axsis and wealth on y-axsis
setxy (who / num-turtles * 100) wealth
]
end

to go
clear-links ; delete all links of player pairs from old round
gaming
taxing
moving
if count turtles < 2 [stop]
update-lorenz-and-gini
tick
end

to gaming ; build random list of all turtles participating in new game round
let game-turtles [self] of n-of (count turtles * select-ratio) turtles
while [length game-turtles > 1] [ ; select a pair and transfer bet
let tlooser one-of game-turtles ; select looser and remove from list
set game-turtles remove tlooser game-turtles
let twinner one-of game-turtles ; select winner and remove from list
set game-turtles remove twinner game-turtles
let minwealth min list [wealth] of tlooser [wealth] of twinner ; compute lower wealth
let diffwealth (minwealth * leverage) ; amount to bet
ask twinner [ ; winner receives bet, multiplicated by winners growth rate
set wealth wealth + (diffwealth * win-mult)
]
ask tlooser [; looser pays bet, multiplicated by loosers growth rate
set wealth wealth - (diffwealth * loose-mult)
]
]
end

to taxing
if tax-factor > 0 [ ; do we have to compute taxes?
let notax-turtles [self] of no-turtles ; empty unsorted list of turtles
let sumtax 0
ask turtles [ ; pay wealth tax
ifelse wealth > tax-limit [ ; is there a tax to pay?
set tax wealth * tax-factor
set wealth wealth - tax ; turtle pays tax
set sumtax sumtax + tax ; add to total tax collected
] [
set tax 0
set notax-turtles lput self notax-turtles ; add to list of notax-turtles
]
]
set count-notax-turtles length notax-turtles ; number of notax-turtles
ifelse (redist-all?) or (count-notax-turtles <= 0) [ ; do we have to redistribute to all turtles?
let mtax (sumtax / count turtles) ; divide total tax between all turtles
ask turtles [ ; distribute tax collected to all turtles
set wealth wealth + mtax ; redistribute
]
] [ ; distribute tax collected only to no-tax-turtles
let mtax (sumtax / count-notax-turtles) ; divide total tax between all no-tax-turtles
ask turtle-set notax-turtles [ ; changes list into agentset
set wealth wealth + mtax ; redistribute
]
]
]
end

to moving
if turtles-die? [ ; should bancrupt turtles die?
if wealth < 1.0E-10 [die]
] ; move turtles to their y-position according to their wealth
set ycor (wealth + min [wealth] of turtles) / max [wealth] of turtles * 100
]
end

to update-lorenz-and-gini
; recompute value of gini-index-reserve and the points in lorenz-points for the Lorenz and Gini-Index plots
let sorted-wealths sort [wealth] of turtles
let total-wealth sum sorted-wealths
let wealth-sum-so-far 0
let index 0
let c-turtles count turtles
set gini-index-reserve 0
set lorenz-points []
; now actually plot the Lorenz curve -- along the way, we also calculate the Gini index
repeat c-turtles [
set wealth-sum-so-far (wealth-sum-so-far + item index sorted-wealths)
set lorenz-points lput ((wealth-sum-so-far / total-wealth) * 100) lorenz-points
set index (index + 1)
set gini-index-reserve gini-index-reserve + (index / c-turtles) - (wealth-sum-so-far / total-wealth)
]
end
```

There is only one version of this model, created over 3 years ago by Rupert Nagler.

## Attached files

File Type Description Last updated
Rich get Richer vs Wealth Tax.png preview Preview for 'Rich get Richer vs Wealth Tax' over 3 years ago, by Rupert Nagler Download

This model does not have any ancestors.

This model does not have any descendants.