Skip to main content
1 of 4
user avatar
user avatar

GE with an intermediate good

intro

I'm looking at a simple model with 1 consumer, 2 goods and 2 firms.

I'm trying to get a price vector [p0, p1] that makes it work.

By makes it work, I mean, supply = demand in all 3 markets.

the problem

The problem is that I'm actually getting a set of price vectors that work.

Consider the picture below :

1x2x2

little details

There is one consumer who owns both firms and their profits and they go :

u = ln(x) + gamma*ln(b), where b = leisure

And their budget is :

M = w*L + profits[0] + profits[1], where w is wage, L = time endowment (n + b = L)

Solving that gives x and b, so labor supply is n = L - b.

The first firm, firms[0], uses just labor to make an intermediate good :

profits[0] = p[0]*z[0]**alpha - w*z[0], where 0 < alpha < 1

Where y[0] = z[0]**alpha is their output.

The other firm, firms[1], uses labor and firms[0]'s output, y[0].

profits[1] = p[1]*z[1]**beta*(k[1]+1)**(1-beta) - w*z[1] - p[0]*k[1], where 0 < beta < 1

This firm is constant returns. Also, I made it so that k[1] could be 0. So like, depending on [alpha, beta, gamma, L] it could be that firm[0] doesn't even produce.

Also since firms[1] is CRS, it uses all of y[0] as its limiting factor, so really, it ends up using ALL the y[0], so then it decides what level of labor z[1] yields the highest profit.

the markets

So the markets look like this :

Labor : n = z[0] + z[1] @ w

Middle : y[0] = k[1] @ p[0]

Final : y[1] = x @ p[1]

how i'm solving them

First, it's important to note that I do not know what I am doing. I'm doing this purely out of boredom, so please don't be surprised if the answer is something really obvious and I just plum don't know about it.

So I have a little function that takes some random price, say [1, 1], and uses that price vector to get the sum of squares of excess supply, exx. Like, it does "supply minus demand" for each market and squares it, and adds it to the total. It's my way of measuring how bad a price vector is.

Is there a way to measure how bad a price vector is?

Then it checks a bunch of price vectors around it, like [1+dp, 1], [1-dp, 1], [1, 1+dp] etc.. where dp is the size of the step. And when finds a point around it with a lower exx, it makes that the new price. And repeats. And when it doesn't find a better point, it shrinks dp and does it again.

the problem

The price vector I get changes depending on the starting point. And most of the time I get an exx = 0 (or very very near 0). The problem is that (just based on my graphing it), exx(p[0],p[1]) doesn't seem to be continuous. When I graph exx against p[0] (x-axis) and p[1] (y-axis), I get a whole set (a line) of price vectors and when I check them manually, they work.

centrally planned

When I solve the central planner problem it looks like this :

u = beta*ln(n[1]) + (1-beta)*ln(n[0]**alpha + 1) + gamma*ln(L - n[0] - n[1])

Take du/d(n[0]) and du/d(n[1]) and that gives you something like :

0 = A(n[0])**(1-alpha) + B*(n[0]) + C

A and B are constants with the exogenous variables

Which is an equation I don't know how to solve but I do it numerically and I can verify that it is the utility-maximizing allocation.

questions

Does this problem have a unique solution?

Is there a proper way of solving for the solution(s)?

I guess that's all. I can possibly add a link to the work I did.

user34331