html("<h1>Оптимизация в секторной экономике</h1>")
@interact
def _(a0 = input_box([1.002, 0.98, 1]),
a1 = input_box([0.5382, 0.6, 0.4]),
a2 = input_box([0.4618, 4, 6]),
c = input_box([20, 40, 10]),
Ksum = input_box(15, label="Суммарная капитализация: "),
K0 = input_box([5,5,5], label="Начальная капитализация: "),
L0 = input_box([1,1,1], label="Начальные трудовые затраты: "),
auto_update=False,
):
Y = lambda K,L: sum([ c[i]*a0[i]*K[i]**a1[i]*L[i]**a2[i] for i in range(0, len(K)) ])
KL0 = list(K0);
KL0.extend(L0)
#html([latex(KL[i]) for i in range(len(KL)/2, len(KL) )])
html("Текущий суммарный доход: " + str( Y(K0,L0).n(digits = 5) ))
constrains = [lambda KL: KL[i] for i in range(0, len(KL0))]
constrains.append(lambda KL: Ksum - sum( [KL[k] for k in range (0, len(KL)/2)] ))
def my_f(KL):
K = [KL[k] for k in range (0, len(KL)/2)];
L = [KL[k] for k in range (len(KL)/2, len(KL))]
return -Y(K,L)
KLres = minimize_constrained(my_f, constrains, KL0)
Kres = [KLres[k] for k in range (0, len(KLres)/2)];
Lres = [KLres[k] for k in range (len(KLres)/2, len(KLres))];
html("Капитал по секторам: $$" + latex(vector(Kres).transpose()) + "$$")
html("Труд по секторам: $$" + latex(vector(Lres).transpose()) + "$$")
html("Общий доход: " + str(Y(Kres, Lres)))
|
|
Оптимизация в секторной экономике
Click to the left again to hide and once more to show the dynamic interactive window
|