Social Capital and Social Networks
Model was written in NetLogo 6.2.0
•
Viewed 200 times
•
Downloaded 10 times
•
Run 0 times
Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)
Comments and Questions
Please start the discussion about this model!
(You'll first need to log in.)
Click to Run Model
globals [ capital-list total-capital weighted-degree-list total-weighted-degree average-weighted-degree P1RProR P1RProNR P1RAntiR P1RAntiNR P2RProR P2RProNR P2RAntiR P2RAntiNR Connections Connected-People Dunbar Bond max-connected-capital ] links-own [ capital happy? link-weighted-degree-list max-weighted-degree ] turtles-own [ degree weight-list weighted-degree ] ;; %-Reaction-to-Pro-Behaviour is the probability of Player 2 reacting to pro-group action by Player 1, it is a social norm and applies to all people ;; Reaction to Anti-Behaviour decreases the degree to which social capital reduces the level of anti group action, it has the effect of increasing reaction to anti group action to setup ;; set the initial values of every variable clear-all ;; clear all old settings ask patches [ set pcolor white] ;; makes the background white ;; set up the network create-turtles People [ set color black set shape "person" ] ;; this sets the group size and the people characteristics set connected-people ( 2 + ceiling ( ( People - 2 ) * ( Interdependence / 10 ) ) ) ;; sets the number of people with connections based on the level of Atraction set connections ( ceiling ( ( connected-people - 1 ) * ( Interdependence / 10 ) ) ) ;; sets the number of Connections for Connected People based on the level of Attraction ask n-of connected-people turtles [ create-links-with n-of connections other turtles ] ;; creates the Connections between Connected People and other People set max-connected-capital ( count turtles with [ count my-links > 0 ] - 1 ) * 10 ;; sets the maximum group social capital based on the number of connected people rather than ;; all the people in the group, some of whom may not be connected repeat 30 [ layout-spring turtles links 0.2 18 1 ] ;; spreads out the network to improve presentation ;; set the reward table values set P1RProR 1 set P1RProNR -2 set P1RAntiR -1 set P1RAntiNR 2 set P2RProR 1 set P2RProNR 2 set P2RAntiR -1 set P2RAntiNR -2 ;; set the maximum level of bonding capital for a person following Rbin Dunbar's 150 theory set Dunbar (ifelse-value People < 6 [ People * 10 ] People > 5 and People < 16 [ 50 + ( ( People - 5 ) * 6.6 ) ] People > 15 and People < 50 [ 116 + ( ( People - 15 ) * 4.4 ) ] [ 263 + ( ( People - 50 ) * 2.9 ) ]) set Bond Interdependence * Dunbar / ( People * 10 ) ;; set up the social capital measure using link capital ask links [ set capital random Bond + 1 set thickness capital / 40 set color black set shape "capital"] ;; sets the initial capital of each link and link characteristics set capital-list [ capital ] of links ;; creates a list of all the link capitals set total-capital 2 * sum capital-list / count turtles ;; total-capital is the average of the total link capital per person which is the average weighted degree and group social capital ;; set up the social capital measure using turtle degree and link weight ask turtles [ set degree count my-links set weight-list [ capital ] of my-links set weighted-degree sum weight-list set size (1 + weighted-degree / ( 2 * count turtles ) ) ] ;; sets the degree and weighted-degree of each turtle set weighted-degree-list [ weighted-degree ] of turtles ;; lists the weighted degrees of all the turtles set total-weighted-degree sum weighted-degree-list ;; calculates the total weighted degree of all the turtles combined set average-weighted-degree total-weighted-degree / count turtles ;; calculates the average weighted degree which is the social capital of the group ;; set up the link view of the weighted degree of the people at each end ask links [ set link-weighted-degree-list [ weighted-degree ] of [ both-ends ] of self set max-weighted-degree max [ link-weighted-degree-list ] of self ] reset-ticks end to go every 0.05 [ if count links = 0 [ set average-weighted-degree 0 set total-capital 0 plot total-capital ask turtles [ die ] stop ] ;; stops the run if social capital is zero ask links [ repeat ( capital ) [ decide reset ] ] ;; Player 1 decides whether to act pro-group or anti-group based on probable rewards ;; and the change in social capital for each pair is based on rewards for both Player 1 and Player 2 ask one-of turtles with [ degree > 0 ] [ grow ] ;; people decide whether to add or subtract connections to other people based on their level of social capital repeat 30 [ layout-spring turtles links 0.2 18 1 ] set max-connected-capital ( count turtles with [ degree > 0 ] - 1 ) * 10 ;; sets the maximum capital of the number of connected people rather than ;; all the people in the group, some of whom may be disconnected ;; set the NEW values of turtle variables and re-calculate group capital based on people attributes ask turtles [ set degree count my-links set weight-list [ capital ] of my-links set weighted-degree sum weight-list set size (1 + weighted-degree / ( 2 * count turtles ) ) ] set weighted-degree-list [ weighted-degree ] of turtles set total-weighted-degree sum weighted-degree-list set average-weighted-degree total-weighted-degree / count turtles ;; set the NEW values of link capital and re-calculate group social capital based on link attributes set capital-list [ capital ] of links set total-capital 2 * sum capital-list / count turtles ;; reset the link view of the weighted degree of the people at each end ask links [ set link-weighted-degree-list [ weighted-degree ] of [ both-ends ] of self set max-weighted-degree max [ link-weighted-degree-list ] of self ] tick ] ;; go again end to decide ;; Player 1 decides whether to act pro or anti Player 2 ;; set the current pro and anti reaction probabilities let ProR ( Reaction-to-Pro-Behaviour / 100 ) let ProNR 1 - ProR let AntiR (1 - ( Capital / ( Reaction-to-Anti-Behaviour * 10 ) ) ) ;; increasing Reaction to Anti Behaviour lessens the reduction impact of higher Capital on AntiR let AntiNR 1 - AntiR ;; calculate the current pro and anti rewards for Player 1 let P1RPro ProR * P1RProR + ProNR * P1RProNR let P1RAnti AntiR * P1RAntiR + AntiNR * P1RAntiNR ;; Player 1 decides on pro or anti group action ifelse P1RPro >= P1RAnti [ set happy? true ] [ set happy? false ] ;; happy attribute equals do pro, not happy equals do anti end to reset ;; based on P1 decision, calculate the increase or decrease in capital for Player 1 plus Player 2, the change in individual link capital let ProR ( Reaction-to-Pro-Behaviour / 100 ) ;; let ProNR 1 - ProR only needed if reward table changed let AntiR 1 - ( capital / ( Reaction-to-Anti-Behaviour * 10 ) ) ;; let AntiNR 1 - AntiR only needed if reward table changed ifelse happy? = true [ if max-weighted-degree < Dunbar [ set capital capital + ( ProR * 0.01 ) ] ] ;; set new capital for pro action if people at each end have not exceeded capacity ;; different equation required if reward table revised ;; ( ProR * ( P1RProR + P2RProR ) + ProNR * ( P1RProNR + P2RProNR ) ) [ set capital capital + ( AntiR * -0.01 ) ] ;; set new capital for anti action, different equation required if reward table revised ;; ( AntiR * ( P1RAntiR + P2RAntiR ) + AntiNR * ( P1RAntiNR + P2RAntiNR ) ) ask links [ if capital >= 10 [ set capital 10 ] ] ;; restricts the capital of a link to the maximum possible ask links [ set thickness capital / 40 ] ;; sets the size of the link to match new capital end to grow ;; people decide whether to create new connections or break old ones based on their personal level of social capital ;; individual person decides whether to add a connection if ( weighted-degree / degree ) > ( 10 - ( ( Interdependence ) / 1.5 ) ) and weighted-degree < Dunbar [ create-link-with one-of other turtles [ set capital random Interdependence + 1 set thickness capital / 40 set color red set shape "capital" ] set degree count my-links set size (1 + weighted-degree / ( 2 * count turtles ) ) ] ;; individual person decides whether to sever a connection if ( weighted-degree / degree ) < ( ( 10 - Interdependence ) / 1.5 ) and ( count my-links > 0 ) [ ask one-of my-links [ die ] set degree count my-links set size (1 + weighted-degree / ( 2 * count turtles ) ) ] end
There is only one version of this model, created over 1 year ago by Keith Windsor.
Attached files
File | Type | Description | Last updated | |
---|---|---|---|---|
Social Capital and Social Networks.png | preview | Preview for 'Social Capital and Social Networks' | over 1 year ago, by Keith Windsor | Download |
This model does not have any ancestors.
This model does not have any descendants.