GSB Dating Scene
Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)
WHAT IS IT?
This model tries to simulate inter-class relationships at the Stanford Graduate School of Business. I've attempted to capture the demographics of the class of 2010 in the initial slider settings.
HOW IT WORKS
Each night is compromised of 20 ticks. In a given night, the students wander, and if they run into a yellow "bar" they will have a drink (unless the student is a non-drinker). Once a student gets drunk, he/she has the opportunity to hook-up with a nearby non-married, non-coupled student. If the pair hooks-up, and neither member has drank too much or had too many previous hookups, they will form a relationship.
Once the night is over, the number of drinks that the student has had resets to 0.
In terms of watching the colors:
red= married
blue = single male
pink = single female
yellow = drinking
orange = hooking up
white = dating
HOW TO USE IT
The user can change the following perameters:
- initial GSB students
- percentage women in the class
- percentage married
- percentage non-drinkers
Comments and Questions
globals [ prob-relationship ;; After a hookup, chance of relationsihp prob-hookup ;; Depends on number of drinks drunk-length ;; After how many ticks does this number reset students bar1 bar2 bar3 ] turtles-own [ male? ;; sex drinks? ;; does the student drink num-drinks ;; number of drinks in this period num-hookups ;; number of hook-ups thus far married? ;; married coupled? ;; In a relationship couple-length ;; How long the person has been in a couple. commitment ;; How long the person will stay in a couple-relationship. partner ;; The person that is our current partner in a couple. ] ;;; ;;; SETUP PROCEDURES ;;; to setup ca setup-globals setup-people setup-bar setup-plot update-plot ;;update-plot end to setup-globals reset-ticks set prob-relationship 50 ;; if you have unprotected sex with an infected partner, set prob-hookup 50 ;; you have a 50% chance of being infected set drunk-length 5 ;; symptoms show up 200 weeks after infection ;; set women percentage-women end to setup-people crt gsb-students [ setxy random-xcor random-ycor set shape "person" ifelse random 100 < percentage-women [set male? false] [set male? true] ifelse random 100 < percentage-married [set married? true] [set married? false] set coupled? false set partner nobody ifelse random 100 < non-drinkers [set drinks? false] [set drinks? true] assign-color ] end to assign-color ;; turtle procedure ifelse married? [ set color red] [ ifelse male? [ set color blue ] [ set color pink ] if coupled? [set color white] ] end to setup-bar ask patches [ if random 100 < 5 [ set pcolor yellow] ] end to go ;; forever button wander drink hook-up update-plot tick if ticks >= 20 [ ask turtles[ set num-drinks 0 assign-color ] reset-ticks ] end to wander;; turtle procedure ask turtles [rt random 360 forward 1 ] end to drink ;; turtle procedure ask turtles [ if pcolor = yellow [ if drinks? = true[ set color yellow set num-drinks (num-drinks + 1) ] ]] end to hook-up ask turtles [ if color = yellow [ if male? [ let potential-partner one-of (turtles-at -1 0) with [not married? and not coupled? and not male?] if potential-partner != nobody [ set partner potential-partner ask partner [ set color orange ] set color orange set num-hookups (num-hookups + 1) ifelse (num-drinks <= 2 and num-hookups < 2 and random 100 < 50) [date] [ifelse male? [ set color blue ] [ set color pink ]] ]]]] end to date set coupled? true ask partner [ set coupled? true ] set color white ask partner [set color white] end to setup-plot set-current-plot "Relationship Status" set-plot-y-range 0 (gsb-students + 10) end to update-plot set-current-plot "Relationship Status" set-current-plot-pen "Married" plot count turtles with [married?] set-current-plot-pen "In a Relationship" plot count turtles with [coupled?] set-current-plot-pen "Hooking up" plot count turtles with [num-hookups > 0] set-current-plot-pen "Single" plot count turtles with [not married? and num-hookups = 0] end to-report %num-hookups report (sum num-hookups / count turtles) end
There are 3 versions of this model.
Attached files
No files
This model does not have any ancestors.
This model does not have any descendants.