Using α+β=1 in f(K,L)=KαLβ is assuming constant returns to scale. If you have α+β<1, you get diminishing returns.
Messing around with some python code:
from scipy.stats import normimport numpy as np
def risk_reduction(K,L,alpha,beta): print(‘risk:‘, norm.cdf(-(K**alpha)*(L**beta))) print(‘expected value:‘, 1/norm.cdf(-(K**alpha)*(L**beta))) print(‘risk (2x):‘, norm.cdf(-((2*K)**alpha)*(L**beta))) print(‘expected value (2x):‘, 1/norm.cdf(-((2*K)**alpha)*(L**beta))) print(‘ratio:’,(1/norm.cdf(-((2*K)**alpha)*(L**beta)))/(1/norm.cdf(-(K**alpha)*(L**beta)))) K,L = 0.5, 0.5alpha, beta = 0.5, 0.5risk_reduction(K,L,alpha,beta)
K,L = 0.5, 0.5alpha, beta = 0.2, 0.2risk_reduction(K,L,alpha,beta)
K,L = 0.5, 20alpha, beta = 0.2, 0.2risk_reduction(K,L,alpha,beta)
K,L = 0.5, 20alpha, beta = 0.5, 0.5risk_reduction(K,L,alpha,beta)
Using α+β=1 in f(K,L)=KαLβ is assuming constant returns to scale. If you have α+β<1, you get diminishing returns.
Messing around with some python code:
from scipy.stats import norm
import numpy as np
def risk_reduction(K,L,alpha,beta):
print(‘risk:‘, norm.cdf(-(K**alpha)*(L**beta)))
print(‘expected value:‘, 1/norm.cdf(-(K**alpha)*(L**beta)))
print(‘risk (2x):‘, norm.cdf(-((2*K)**alpha)*(L**beta)))
print(‘expected value (2x):‘, 1/norm.cdf(-((2*K)**alpha)*(L**beta)))
print(‘ratio:’,(1/norm.cdf(-((2*K)**alpha)*(L**beta)))/(1/norm.cdf(-(K**alpha)*(L**beta))))
K,L = 0.5, 0.5
alpha, beta = 0.5, 0.5
risk_reduction(K,L,alpha,beta)
K,L = 0.5, 0.5
alpha, beta = 0.2, 0.2
risk_reduction(K,L,alpha,beta)
K,L = 0.5, 20
alpha, beta = 0.2, 0.2
risk_reduction(K,L,alpha,beta)
K,L = 0.5, 20
alpha, beta = 0.5, 0.5
risk_reduction(K,L,alpha,beta)