Ultimatum

Ultimatum preview image

1 collaborator

Tags

(This model has yet to be categorized with any tags)
Visible to everyone | Changeable by everyone
Model was written in NetLogo 6.2.1 • Viewed 55 times • Downloaded 4 times • Run 0 times
Download the 'Ultimatum' modelDownload this modelEmbed this model

Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)


WHAT IS IT?

This is a an excercise model that attempts to describe the emergence of cumulative wealth and the distribution of such wealth in an iterative ultimatum game, considering the prosocial emotion of "shame" and profit-maximing "greed",

This model is inspared by the work of Reuben et al in trying to understand the role of emotions after punishment (in particular shame/guilt) in the take rates of proposers:

https://www.sciencedirect.com/science/article/abs/pii/S0167487010000887?via%3Dihub

ULTIMATUM GAMES

One player, the proposer, is endowed with a sum of money. The proposer is tasked with splitting it with another player, the responder. Once the proposer communicates their decision, the responder may accept it or reject it. If the responder accepts, the money is split per the proposal; if the responder rejects, both players receive nothing

Ultimatum games: https://en.wikipedia.org/wiki/Ultimatum_game

HOW IT WORKS

60 players are created and endowed with an initial amount of money - 10 euros. This initial endowment can be taken from a distribution (exponential or normal) or be equal for all the participants. This is controlled by the initial-endowment-distribution selector.

Players are also assigned with a take-rate in the case they are proposers (prop-take-rate) and one for when they take the roles of responders (resp-take-rate). The proposer take rate will determine the offer of the proposer while the responder take rate will determine the amount that the responder agrees to from the proposer to take.

To cater for variabilities in fairness perceptions in the different players the take rates are taken from a normal distribution with mean mean-take-rate and sd-take-rate both for the responder and proposer rates.

Each turn these players are randomly assigned to the role of responder (red) and proposer (blue) and responders and proposers are paired with each other, also randomly.

If the responder has an endowment and the proposers endowment is more than the cost-to-play then a link is established between the two and a proposal is made by the proposer to take an amount of the endowment of the responder according to the prop-take-rate of the proposer.

If the proposed take rate is lower or equal to the what the responder considers fair (resp-take-rate) there is a "deal" and the proposed proportion of the responders endowment will pass to the proposer and be deducted from the responders.

If the proposed take rate is larger than the one that the responder considers fair (resp-take-rate) there is no deal, and the proposer will set his/her endowment to 0 effectively destroying their wealth.

Those proposers who got they proposal rejected will reduce the prop-take-rate by a percentage corresponding to the prop-shame-weight for next time.

Those proposers who got they proposal accepted will increase the prop-take-rate by a percentage corresponding to the prop-greed-weight for next time.

For the next turn every player's endowment will be increased by a fixed amount defined by the turn-endowment global variable simulating a wellfare endowment.

Additionally, the current endowment of the players (not considering the wellfare endowment) will be increased by 1+interest-rate each turn

The game will end after 100 turns. If no proposals can be made (no proposers can afford the cost-to-play and/or responders have 0 endowment left) the game will end.

THINGS TO NOTICE

  • Which starting point of take rates (both responder and proposer) and combination of adjusting behavior (greed/shame) will be the best agent for a given agent to maximize long term profit.
  • Cummulative weatlh - what is the best settings and players strategy to reach the best cumulative wealth?
  • Wealth distribution - what is the best settings and players strategy to achieve the fairest wealth distribution?
  • Players out of the game - the amount of players that can no longer play because they can't affor the cost-to-play.
  • How many turns does the game last?

THINGS TO TRY

  • Try cost to play = 0 (everyone can propose)
  • Explore the relationship between turn-endowment and cost-to-play
  • Comapre fixed endowment with interest rate on current endowment and how that affects the wealth distribution

EXTENDING THE MODEL

  • Compare this model with one where the players stick to they roles (once a proposer/responder always a proposer/responder)
  • Wellfare endowment could be a proportion of the amount taken from the responders in succesfull operations in each turn. This would simulate an authority redistributing wealth.
  • Eplore different distributions in the resp-take-rates and prop-take-rate
  • Include and adjusting behavior on the resp-take-rate for the responder after destroying the endowment.
  • This model only considers take-rates for the responder decison to wether destroy the endowment or not. It is clear that the abolute value of the take should also be considered.
  • Greed and shame weights are assumed to be equal for all participants. These could be drawn from a distribution to add some more randomness to the model.
  • This models response in binary terms (destroy all vs accept) . This model could be extended to consider partial endowment destroy.

RELATED MODELS

Wealth distribution

CREDITS AND REFERENCES

Author: Mariano Crimi

https://www.sciencedirect.com/science/article/abs/pii/S0167487010000887?via%3Dihub https://www.nature.com/articles/s41598-017-05122-5

Comments and Questions

Please start the discussion about this model! (You'll first need to log in.)

Click to Run Model

globals
[
  sum-wealth
]

turtles-own [
  endowment ;;amount of money to play
  proposer ;;boolean, 1 if the player aquired the role of proposer for the turn
  responder ;;boolean, 1 if the player aquired the role of responder for the turn
  prop-take-rate ;;the take-rate the the player will propose to the responder if it has the proposer role for the turn
  resp-take-rate ;;tha tak-e rate that the player will accept from a proposer if it has the responder role for the turn
]
links-own [
  take-amount ;;amount fo the transaction
  trn-prop-take-rate ;;proposed take of the transaction
]

breed [players player]


;;;
;;; SETUP PROCEDURES
;;;

to setup
  clear-all
  reset-ticks
  setup-players
end 

;;Create players, set initial endowments and take rates

to setup-players
  create-players 60
  ask players [
    ;;setup initial endowment
    (ifelse  initial-endowment-distribution = "Exp" [
      set endowment random-exponential 10
    ] initial-endowment-distribution = "Normal" [
      set endowment random-normal 10 1
    ] initial-endowment-distribution = "Equal" [
      set endowment 10
    ])

    set shape "person"
    set color grey
    setxy random-pxcor random-pycor
    set prop-take-rate random-normal prop-mean-take-rate prop-sd-take-rate;; draw take rates when player is proposer from a normal distribution
    set resp-take-rate random-normal resp-mean-take-rate resp-sd-take-rate;; draw take rates when player is responder from a normal distribution
  ]
end 


;;;
;;; GO PROCEDURES
;;;

to go
  setup-turn
  setup-proposals
  prop-propose
  resp-decide
  ask players [set endowment endowment * (1 + interest-rate)] ;;earn interest
  ask players [set endowment (endowment + turn-endowment)] ;;wellfare endowment
  if count links < 1 [stop]
  if ticks > 100 [stop]
  tick
end 


;;Each turn these players are randomly assigned to the role of responder (red) and proposer (blue)
;;and responders and proposers are paired with each other in cricle, also randomly.

to setup-turn
  clear-links
  reset-players
  setup-responders
  setup-proposers
  layout-circle players with [responder = 1] (world-width / 2.13)
  layout-circle players with [proposer = 1] (world-width / 2.3)
  ask players with [endowment < cost-to-play] [ set color grey]
end 

to reset-players
  ask players [
    setxy random-pxcor random-pycor
    set proposer 0
    set responder 0
    set color grey
    set label ""
  ]
end 

to setup-responders
  ask n-of 30 players[
    set color red
    set responder 1
   ]
end 

to setup-proposers
  ask players with [responder != 1]  [
    set proposer 1
    set color blue
  ]
end 

to setup-proposals
  ask players with [responder = 1 and endowment > 0] [ ;;only link if you have money to play
    let potential-partner turtles-on  neighbors
    let actual-partner potential-partner with [ endowment >= cost-to-play] ;;only link if the proposer can afford the cost to play
    create-links-with actual-partner
  ]
end 

to prop-propose
 ask players with [proposer = 1]  [
    let temp prop-take-rate
    ask my-out-links[
      set trn-prop-take-rate temp
    ]
 ]
 ask players with [responder = 1]  [
    let temp2 endowment
    ask my-out-links[
      set take-amount (temp2 * trn-prop-take-rate)
    ]
 ]
end 

to resp-decide
ask players with [responder = 1 and count link-neighbors with [proposer = 1] > 0] [
      let temp3 0
      ask my-out-links [
        set temp3 trn-prop-take-rate
      ]
      ifelse  temp3  > resp-take-rate [   ;;destroy the endowment
        set endowment 0
        set label "x"
      ]
      [
        set label "deal!" ;;accept the take
      ]
]

ask players with [label = "deal!" and responder = 1] [ ;; transactions for the agreed take
    let temp4 0
    set color green
    ask my-out-links [ ;; retrieve the amout the take-amount of the transaction
      set temp4 take-amount
    ]
      set endowment endowment - temp4 ;; deduce the take-amount from the responders endowment
    ask link-neighbors [
      set endowment endowment + temp4 ;; deposit the take-amount in the proposers endowment
      ;; increase the proposers take rate for next time
      ifelse (prop-take-rate * (1 + prop-greed-weight)) <= 1 [
        set prop-take-rate (prop-take-rate * (1 + prop-greed-weight))
      ][
        set prop-take-rate 1
      ]
       set color green
    ]
]

ask players with [label = "x" and responder = 1] [ ;; associated proposers take shame and reduce take-ratio
    ask my-out-links [set color red]
    ask link-neighbors [
      set prop-take-rate (prop-take-rate * (1 - prop-shame-weight)) ;; reduce the proposers take rate for next time
    ]
]
end 


;2020- Mariano Crimi

There is only one version of this model, created almost 2 years ago by Vicknes Sivaraman.

Attached files

File Type Description Last updated
Ultimatum.png preview Preview for 'Ultimatum' almost 2 years ago, by Vicknes Sivaraman Download

This model does not have any ancestors.

This model does not have any descendants.