Labour Market Dynamics
Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)
WHAT IS IT?
(a general understanding of what the model is trying to show or explain)
HOW IT WORKS
(what rules the agents use to create the overall behavior of the model)
HOW TO USE IT
(how to use the model, including a description of each of the items in the Interface tab)
THINGS TO NOTICE
(suggested things for the user to notice while running the model)
THINGS TO TRY
(suggested things for the user to try to do (move sliders, switches, etc.) with the model)
EXTENDING THE MODEL
(suggested things to add or change in the Code tab to make the model more complicated, detailed, accurate, etc.)
NETLOGO FEATURES
(interesting or unusual features of NetLogo that the model uses, particularly in the Code tab; or where workarounds were needed for missing features)
RELATED MODELS
(models in the NetLogo Models Library and elsewhere which are of related interest)
CREDITS AND REFERENCES
(a reference to the model's URL on the web if it has one, as well as any other necessary credits, citations, and links)
Comments and Questions
breed [candidates candidate] breed [employers employer] globals [ hires total-match-quality ] candidates-own [ capability narrative evidence prestige employed? false-negative-counted? ] employers-own [ required-capability w-narrative w-evidence w-prestige threshold ] to setup clear-all set hires 0 set total-match-quality 0 create-candidates num-candidates [ setxy random-xcor random-ycor set shape "person" set size 1 set color blue set capability random-float 1 set evidence signal-from-capability capability evidence-fidelity set narrative signal-from-capability capability narrative-fidelity set prestige signal-from-capability capability prestige-fidelity set employed? false set false-negative-counted? false ] create-employers num-employers [ setxy random-xcor random-ycor set shape "square" set size 1.4 set color red set required-capability random-float 1 set w-narrative narrative-weight-global set w-evidence evidence-weight-global set w-prestige prestige-weight-global set threshold hiring-threshold ] clear-all-plots reset-ticks refresh-my-plots end to go ask candidates with [not employed?] [ apply-to-job ] tick refresh-my-plots end to apply-to-job let target-employer one-of employers let observed-score ( ([w-narrative] of target-employer * narrative) + ([w-evidence] of target-employer * evidence) + ([w-prestige] of target-employer * prestige) + random-normal 0 (screening-noise * 0.2) ) let true-fit (1 - abs (capability - [required-capability] of target-employer)) if observed-score > [threshold] of target-employer [ set employed? true set color green set hires hires + 1 set total-match-quality total-match-quality + true-fit ] if (capability > high-capability-threshold) and (observed-score <= [threshold] of target-employer) and (not employed?) and (not false-negative-counted?) [ set false-negative-counted? true ] end to-report signal-from-capability [cap fidelity] let random-part random-float 1 report (fidelity * cap) + ((1 - fidelity) * random-part) end to-report employment-rate if count candidates = 0 [ report 0 ] report count candidates with [employed?] / count candidates end to-report unemployment-rate if count candidates = 0 [ report 0 ] report count candidates with [not employed?] / count candidates end to-report average-match-quality if hires = 0 [ report 0 ] report total-match-quality / hires end to-report false-negatives report count candidates with [false-negative-counted?] end to-report high-capability-candidates report count candidates with [capability > high-capability-threshold] end to-report false-negative-rate let high-capability-total high-capability-candidates if high-capability-total = 0 [ report 0 ] report false-negatives / high-capability-total end to refresh-my-plots set-current-plot "Employment" if not plot-pen-exists? "Employment rate" [ create-temporary-plot-pen "Employment rate" ] if not plot-pen-exists? "Unemployment rate" [ create-temporary-plot-pen "Unemployment rate" ] set-current-plot "Match quality" if not plot-pen-exists? "Average match quality" [ create-temporary-plot-pen "Average match quality" ] set-current-plot "False negatives" if not plot-pen-exists? "False negative rate" [ create-temporary-plot-pen "False negative rate" ] set-current-plot "Employment" set-current-plot-pen "Employment rate" plot employment-rate set-current-plot-pen "Unemployment rate" plot unemployment-rate set-current-plot "Match quality" set-current-plot-pen "Average match quality" plot average-match-quality set-current-plot "False negatives" set-current-plot-pen "False negative rate" plot false-negative-rate end
There is only one version of this model, created 5 days ago by Mike Sheerin.
Attached files
No files
This model does not have any ancestors.
This model does not have any descendants.
Download this model