In farm-size distribution models explored in other notebooks we've made the assumption that households have different farming skill $s$ and implicitly that the time required for management is different and non-substitutable with labor used in farm work.
In those models every farm household produces (unless there are fixed costs to production in which case only the more skilled engage in production. Since every household inelastically supplies labor, total labor supply is always $\bar L$.
On the one hand this might be seen as a simplifying assumption but on the other hand it fits the fact that in many/most farming contexts, particularly in developing countries smaller farms often both operate their own farms and sell labor to other, usually bigger, farms.
Lucas (1978) makes the somewhat different assumption ...
In [1]:
%load_ext watermark
%watermark -u -d -t
In [2]:
import numpy as np
from matplotlib import pyplot as plt
from scipy.stats import lognorm
plt.rcParams["figure.figsize"] = (10, 8)
np.set_printoptions(precision=4)
%matplotlib inline
In [24]:
from geqfarm import *
%load_ext autoreload
%autoreload 2
Create an 'economy' object with N skill-level groups.
In [33]:
N = 10 # number of skill
E = Economy(N)
E.GAMMA = 0.8
E.ALPHA = 0.6
Xbar = [E.TBAR, E.LBAR]
Let's summarize the parameters as they now stand:
In [34]:
E.print_params()
When Lucas = False
farms don't have to specialize in farm management. When True
then as in Lucas (1978) household labor must be dedicated to management and labor must be hired.
In [102]:
E.s = np.linspace(1,5,num=N)
plt.title('skill distribution')
plt.xlabel('group index')
plt.plot(x,E.s,marker='o');
In [103]:
E.Lucas = False
rwc, (Tc,Lc) = E.smallhold_eq([E.TBAR,E.LBAR],E.s)
In [104]:
rwc
Out[104]:
In [105]:
plt.title('Eqn factor use')
plt.xlabel('group index')
plt.plot(x,Tc,marker='o');
plt.plot(x,Lc,marker='o');
In [106]:
plt.title('induced farm size (factor use) distribution')
plt.plot(Tc,marker='o')
plt.plot(Lc, marker='x');
In [107]:
E.excessD(rwc,Xbar,E.s) # should be essentially 0
Out[107]:
In [108]:
E.Lucas = True
rwc_L, (Tc_L,Lc_L) = E.smallhold_eq([E.TBAR,E.LBAR],E.s)
In the Lucas equilibrium there is less unskilled labor (since managers cannot be laborers) so all else equal we would expect higher wages.
In [109]:
rwc, rwc_L
Out[109]:
In this sample equilibrium the two lowest skill groups become pure laborers.
In [110]:
plt.title('Eqn factor use')
plt.xlabel('group index')
plt.plot(x,Tc_L, marker='o', linestyle='None',label='land')
plt.plot(x,Lc_L, marker='o', linestyle='None', label='labor')
plt.legend();
Note that now about 50% of labor is going into management. However this is an artifact of the unform distribution of skill which puts so much population in the higher skill groups.
In [113]:
E.LBAR-sum(Lc_L)
Out[113]:
Note that the two economies (one Lucas style the other non-Lucas) are not comparable because they have fundamentally different production technologies.
In [122]:
E.prodn([Tc_L,Lc_L],E.s)
Out[122]:
In [120]:
sum(E.prodn([Tc_L,Lc_L],E.s))
Out[120]:
In [123]:
E.prodn([Tc,Lc],E.s)
Out[123]:
In [121]:
sum(E.prodn([Tc,Lc],E.s))
Out[121]:
Just out of interest, how much lower would output be in the Non-Lucas economy if every household were self-sufficient.
In [129]:
Tce = np.ones(N)*(E.TBAR/N)
Lce = np.ones(N)*(E.LBAR/N)
sum(E.prodn([Tce,Lce],E.s))
Out[129]:
In [132]:
E.prodn([Tce,Lce],E.s)
Out[132]:
In [139]:
sum(rwc*[E.TBAR/N, E.LBAR/N])+E.prodn([Tce,Lce],E.s)-
In [140]:
rwc*[Tc,Lc]
In [ ]:
sum
In [13]:
(Xrc,Xr,wc,wr) = scene_print(E,10, detail=True)
In [14]:
factor_plot(E,Xrc,Xr)
In [15]:
E.Lucas = True
rwcl, (Tcl,Lcl) = E.smallhold_eq([E.TBAR,E.LBAR],E.s)
In [16]:
Lcl
Out[16]:
In [17]:
E.excessD(rwcl,Xbar,E.s)
Out[17]:
In [18]:
plt.title('Competitive: Induced farm size (factor use) distribution')
plt.plot(Tcl,marker='o',label='land (Lucas)')
plt.plot(Lcl, marker='x',label='labor (Lucas)')
plt.plot(Tc, '-o',label='land ')
plt.plot(Lc, marker='x',label='labor ')
plt.legend();
Not that the two economies are directly comparable (technologies are not the same)... but in the Lucas economy there will be less operating farms and a lower supply of farm labor (since the more skilled become full-time managers). The farms that do operate will therefore use more land and less labor compared to the non-Lucas economy.
In [19]:
E.Lucas = True
E.smallhold_eq([E.TBAR,E.LBAR/2], E.s)
Out[19]:
In [20]:
(Xrcl,Xrl,wcl,wrl) = scene_print(E, numS=10, detail=True)
Compared to the original scenario the landlord with marker power in the Lucas-scneario faces a countervailing force: if she pushes the wage too low then she makes self-managed production more attractive for a would-be medium sized farmer who is not now in production.
From the solution it would appear that the beyond a certain theta there does not appear to be an available way for the landlord to distort further. .
In [21]:
E.Lucas = True
factor_plot(E,Xrcl,Xrl)
E.Lucas = False
factor_plot(E,Xrc,Xr)
In [28]:
E.Lucas = True
E.cartel_eq(0.5)
Out[28]:
In [31]:
E.cartel_eq(0.6)
Out[31]:
In [44]:
E.cartel_eq(0.2)
Lr
Out[44]:
Something is still not right... labor used/demanded excees labor supply
In [46]:
(r,w),(Tr,Lr)= E.cartel_eq(0.5)
sum(Lr),np.count_nonzero(Lr)*(E.LBAR)/E.N
Out[46]:
In [47]:
sum(Lr)
Out[47]:
In [49]:
fringe = E.smallhold_eq([E.TBAR,E.LBAR/2], E.s)
In [57]:
fringe.w
Out[57]:
In [58]:
fringe.X
Out[58]:
In [59]:
fringe.X[0]
Out[59]:
In [ ]: