Federica Ferro Cinzia Rossero

Simulation models for economics

Project work on

"Part-time and female labour market."

 

The applet requires Java 1.4.1 or higher. It will not run on Windows 95 or Mac OS 8 or 9. Mac users must have OS X 10.2.6 or higher and use a browser that supports Java 1.4. (Safari works, IE does not. Mac OS X comes with Safari. Open Safari and set it as your default web browser under Safari/Preferences/General.) On other operating systems, you may obtain the latest Java plugin from Sun's Java site.


powered by NetLogo

view/download model file: part-time_and_female_labour_market.nlogo

WHAT IS IT?

The model wants to simulate a simple economic market where there are only female subjects divided into 3 categories: workers with or without a part-time solution disposable and not workers at all. Our aim is the analysis of the usefulness of the part-time oportunity in the labour market, trying to capture its connection with the whole economy path represented by the sum of the added values produced by each agent any time.


HOW IT WORKS

In the model, agents are divided into mothers and not-mother (established by the fecundity rate). Each subject considering his own features(formation level, granparents and childcare services availability) chooses to be or not a supply component. Through the interaction between demand and supply on the labour market we obtain the total number of workers, and then the total added-value produced ( as an evaluation of the whole economy).


HOW TO USE IT

Click the setup button to set the initial model.
Click the go button to start the simulation.
Child-care: a slider that represents the availability of a child-care service in the interested area expressed as a percentage.
Prob-uni: a slider that represents the probability that the subjects would have received a university formation
Women-per-age-class: a slider through which the observercan choose the amount of female subjects interating in the simulation for each giiven age class.
Expansion: a chooser that permits us to do a distinction between the general conditions of the economy (recession or expansion).
Part-time availability: a switch to set the part-time condition.
Year: a monitor to look at the passing of the years
N-women: a monitor to picture the total amount of women interacting in the model


PROCEDURES

;fecundity -> the probability of being pregnant for the fist time each year
;flux -> number of entering women each cycle
;N -> total number of women in the simulation
;sup-comp -> supply component
;prob-grans -> probability of having granparents
;pbase-mother -> prob. of being engaged under the condition of mother
;pbase-notmother -> prob. of being engaged under the condition of being not mother
;inc-p-uni -> the increase in prob. of being engaged under the tertiary formation
;inc-p-grans -> the increase in prob. of being engaged conditionated to the grandparents presence
;inc-p-care -> the increase in prob. of being engaged conditionated to the childcare service
;add-value -> the add value created in the economy by each subjects
;demand -> the total demand component
;demand-in -> the initial amount of demand
;supply-uni -> the graduated suppliers
;supply-notuni ->the undergraduated suppliers
;supply ->total amount of supply (supply-uni + supply-notuni)

globals [demand demand-in supply-uni supply-notuni supply fecundity flux prop N-women prob-grans inc-p-uni inc-p-grans inc-p-care pbase-mother pbase-notmother year add-value]
breed [women woman]
women-own [age mother sup-comp grans c-care formation worker part-time]

to setup
  ca
  set N-women women-per-age-class * 20; to choose the amount of subjects iterating in the model
  set demand-in  0.9 * N-women ; to describe the demand side
  set demand demand-in     ;to define the initial demand
  set fecundity [0.0552 0.0644 0.0735 0.082 0.0888 0.0952 0.0968 0.0959 0.0918 0.0863 0.0779 0.0677 0.055 0.0439 0.0335 0.0245 0.0217 0.0193 0.0121 0.009]; indexes from 0 to n-1
  set prob-grans 0.5  ; the probability of having grandparents   
  set inc-p-uni 0.184      ; the increase due to the university formation 
  set inc-p-grans 0.06   ; the increase due to the  grandparents availability 
  set inc-p-care 0.03    ; the increase due to the childcare services availability
  ifelse part-time-availability [set pbase-mother 0.6][set pbase-mother 0.2] ; the basic probability of searching for a job sub to partime availability or not 
  set pbase-notmother 0.75; ; the basic probability of searching for a job under the condition of being not mother
  foreach n-values (20) [?]  ;  to run the action for each item
  [
    ask women[set age age + 1] ; to set a growth in age
    create-women women-per-age-class ; to create women in each class 
    
    [
      set age 25
      set mother false
      ifelse random-float 1 < prob-of-attending-university [set formation true][set formation false] ;to set formation related to previous probability
      ifelse random-float 1 < prob-grans [set grans true][set grans false]
      ifelse random-float 1 < childcare [set c-care true][set c-care false]
      set shape "person"
      set size 1
      fd random 15
      set part-time false      
        ]
    ask women [
      if not mother [if random-float 1 < item (age - 25) fecundity [set mother true]] ; to define the condition of being mother or not
      let p-supcomp 0     ;to define the initial level of the supply-component
      ifelse mother [set p-supcomp pbase-mother][set p-supcomp pbase-notmother]
      if mother [
        if formation [set p-supcomp (p-supcomp + inc-p-uni)]
        if grans [set p-supcomp (p-supcomp + inc-p-grans)]
        if c-care [set p-supcomp (p-supcomp + inc-p-care)]
      ]
      ifelse random-float 1 < p-supcomp [set sup-comp true][set sup-comp false] 
      ifelse mother [set color pink] [set color green] 
    ]
  ]      
end

to go
  wait 1
  set year year + 1 ; to increase the years at each tick
  ask women[set age age + 1] ; to increase the age of women at each cycle
  set supply-uni 0   ;to define the initial level of supply of university subjects
  set supply-notuni 0   ;to define the initial level of supply of no-university subjects
  set supply 0
  create-women women-per-age-class [
      set age 25
      set mother false
      ifelse random-float 1 < prob-of-attending-university [set formation true][set formation false]
      ifelse random-float 1 < prob-grans [set grans true][set grans false]
      ifelse random-float 1 < childcare [set c-care true][set c-care false]
      set shape "person"
      set color green
      set size 1
      set part-time false
   ]
  ask women [
      if age > 44 [die] ; to set the exiting subjects (over 44) 
      if not mother [if random-float 1 < item (age - 25) fecundity [set mother true]] 
      let p-supcomp 0
      ifelse mother [set p-supcomp pbase-mother][set p-supcomp pbase-notmother]
      if mother [
        if formation [set p-supcomp (p-supcomp + inc-p-uni)] ; to calculate the increase in probability of being worker sub to the increaseal prob.
        if grans [set p-supcomp (p-supcomp + inc-p-grans)]
        if c-care [set p-supcomp (p-supcomp + inc-p-care)]
      ]
      ifelse random-float 1 < p-supcomp [set sup-comp true][set sup-comp false] 
      if sup-comp [ifelse formation [set supply-uni supply-uni + 1][set supply-notuni supply-notuni + 1]]; inplementation of the supply due to the increase of the supply components
      ifelse mother [set color pink] [set color green] 
  ]
 
 
  set supply supply-uni + supply-notuni   
  ifelse expansion [set demand demand * 1.008][set demand demand * 1.002] ; exogenously growth set in demand side
  let p-uni 0
  let p-notuni 0
  let demand-uni 0.3 * demand  ; to set the composition of demand
  let demand-notuni 0.7 * demand 
  ifelse expansion [
   set demand-notuni demand-notuni * 1.1 ; to set the different variation in case of expansion 
   set demand-uni demand - demand-notuni 
  
   ifelse supply > demand   ; to define the equilibrium in the labour market (comparison between demand and supply)
   [                         
     if supply-uni > 0 [set p-uni demand-uni / supply-uni]     ; to define the worker condition (supply>demand)
     if supply-notuni > 0 [set p-notuni demand-notuni / supply-notuni]
   ]
   [
    set p-uni 1.1      ; to established that all subjects interacting in the model can be workers (supply<demand) also who has probability 1
   
    set p-notuni 1.1
   ]
  ]
  [
   set demand-uni demand-uni * 1.1 ;    to set the different variation in case of recession
   set demand-notuni demand - demand-uni
   ifelse supply > demand [
     if supply-uni > 0 [set p-uni demand-uni / supply-uni]
     if supply-notuni > 0 [set p-notuni demand-notuni / supply-notuni]
   ]
   [
     set p-uni 1.1
     set p-notuni 1.1
   ]
  ]
  ask women[
  ifelse sup-comp [
    ifelse formation [ifelse random-float 1 < p-uni [set worker true][set worker false]][ifelse random-float 1 < p-notuni [set worker true][set worker false]]
    if part-time-availability [if worker [if mother[ifelse random-float 1 < 0.28 [set part-time true][set part-time false]]]]  ;to set how many use part-time
  ]
  [
    set worker false
  ]
  ]  
set add-value 0           ;to established the initial level
ask women  ; to evaluate the added value created in the economy
[
if worker[
  ifelse mother 
  [ 
    ifelse formation
    [
      ifelse part-time
      [
        set add-value add-value + 12    ;mother,formation,part-time
      ]
      [
        set add-value add-value + 20    ;mother,formation,no part-time
      ]
    ]
    [
      ifelse part-time     
      [
         set add-value add-value + 10  ;mother,no formation,part-time
      ]
      [
         set add-value add-value + 16  ;mother,no formation, no part-time
      ]
    ]
  ]
  [
    ifelse formation
      [
        set add-value add-value + 21   ;no mother,formation
      ]   
      [
        set add-value add-value + 17   ;no mother,no formation
      ]
  ]
] 
]   
graph   ;look at the graph defined below
end

to graph      ;to locate breed on the screen
  let xnw -1   ;in order to have the first breed in the 0 position
  let xp -1
  let xnp -1
  let yp 30    ; upper part of screen workers with part-time    (the origin is in the lower left side)
  let ynp 20    ; middle part workers without part-time
  let ynw 8     ;lower part no-workers
  ask women 
  [   
    ifelse worker
    [
      ifelse part-time 
      [
        set xp xp + 1
        if xp > max-pxcor 
        [
          set xp 0
          set yp yp - 2 
        ]
      set xcor xp
      set ycor yp
      ]
      [
      set xnp xnp + 1
       if xnp > max-pxcor [
        set xnp 0
        set ynp ynp - 2 
        ] 
     set xcor xnp
     set ycor ynp
    ]
    ]
    [
     set xnw xnw + 1
     if xnw > max-pxcor [
        set xnw 0
        set ynw ynw - 2 
        ] 
   set xcor xnw
   set ycor ynw
  ]  
  ]
  set-current-plot "add-value"      ;to look at the path of added value
  set-current-plot-pen "add-value"
  plot add-value
  
  set-current-plot "Worker"         ;to look at the path of supply
  set-current-plot-pen "Supply"
  plot int (supply)
  
  set-current-plot "Worker"         ;to look at the path of demand
  set-current-plot-pen "Demand"
  plot int (demand)
  
  
end