You are on page 1of 7

Introduction to Kuhn-Tucker Programming1

I. Introduction

Much of economics is about choosing the best option from a set of alternatives. Formally, we
refer to this as optimization. Optimization can be constrained or unconstrained, but we can think
of unconstrained optimization as constrained optimization where the constraints aren’t binding,
that is, where they don’t matter. (“Constraint” refers to a limit on the value of a choice variable.)

Kuhn-Tucker programming gives us a method of mathematically modeling a choice problem


with multiple constraints, and finding the best choice among the available options, i.e. finding
the optimum. We can then study the properties of the optimum and how the optimal choice
might change in response to changes in the economy. Here’s a simple example.

Suppose there are two goods, X and Y, that a person can consume. The individual desires to
maximize utility u = u(x, y) where x is the amount of X the person consumes, and y is the
amount of Y. The person faces a budget constraint I (a total number of dollars) and money
prices PX and PY. Formally, the consumer problem is this:

Choose x, y to maximize u(x, y) subject to I = PX·x + PY·y.

The utility function u(x, y) is the objective function, to be maximized in this case.2 The budget
I(x, y) is the constraint; the person cannot spend more than $I.

Given a few reasonable assumptions, this problem has a simple graphical solution. Draw it.3 (In
(x, y) space, draw a linear budget constraint and a convex-to-origin indifference curve that has a
point of tangency somewhere on the constraint.)

This is a way of modeling or representing consumer choice. The consumer makes himself, or
herself, as well off as possible given the limits of his/her income. S/he maximizes utility, subject
to the budget constraint, by consuming the best (as s/he sees it) basket of x and y s/he can afford.

Let (x*, y*) be this optimal basket. Note the following. At optimum (x*, y*):

1
This handout is derived from chapters 1-3 of Dixit’s Optimization in Economic Theory, 2nd ed. After reading this
handout, read these chapters in Dixit and carefully work through his examples and problems.
2
Some problems call for minimizing the value of an objective function, e.g. a cost minimization problem.
3
At various points I tell you to draw something or write something down. In every case it’s something very simple.
Don’t fiddle around – DO IT! And get in the habit of writing notes, drawing graphs, scribbling equations, etc. when
you are reading, if you aren’t doing this already. When you read Dixit, he solves some example problems for you.
You should solve these yourself, on paper, as you read.
1. Marginal Rate of Substitution equals Relative Price, i.e. MUX/MUY = PX/PY or MUX/PX =
MUY/PY. This is the equimarginal rule for an optimum, the equimarginal condition.

2. I = PX·x* + PY·y*, that is, the consumer spends all his income. This assures the consumer
is within (on, in this case) the budget constraint. Let’s call this the constraint condition. 4

Together, 1 and 2 guarantee that the consumer is at an optimum; there’s no feasible (affordable)
alternative that would make him better off. The mathematics of this is easy (we’ll get to it).

But before we do math, what if:

(i) The utility function is such that 1 can’t be satisfied. Maybe it’s optimal to have a
corner solution where only one good is consumed, or perhaps the very best
combination costs less than the full budget (local satiation) or maybe one or both
goods are “bads.” (Draw a budget constraint and indifference curves illustrating each
of the following: a corner solution where only one good is consumed, the solution if
both X and Y are “bads,” and the case of local satiation.)
(ii) Or what if there’s more than one constraint? (Draw a case with two linear constraints
and have them intersect in R++. Next, identify the feasible space, i.e. all the baskets
the consumer can afford. Shade it.)

KT programming will give us a way of dealing with all of these cases: cases where the usual
equimarginal and constraint conditions don’t hold, and cases of multiple constraints.

II. Economics of First Order Conditions

The equimarginal condition and the constraint condition can be derived from the First Order
Conditions (FOC) for a maximum in a simple Lagrangian optimization problem (Section III).
Before we tackle the math, let’s examine the economic meaning of the FOC.

From the FOC, we find MUX/PX = MUY/PY and I = PX·x + PY·y. The solution (x*, y*) satisfies
both of these simultaneously.

Noting that MUX > 0 and MUY > 0, we can see that MUX(x*)/PX and MUY(y*)/PY are the
marginal utility per dollar at the optimum, or in other words the marginal utility of income. 5
Let’s denote this as λ.

Thus λ = MUX(x*)/PX = MUY(y*)/PY > 0.

4
Note that “constraint condition” is my own terminology for purposes of this paper; it isn’t standard. By constraint
condition I mean that the consumer spends the entire budget and so consumes a basket located on the boundary of
the constraint, not the interior.
5
All I’ve done here is rewrite to emphasize that MU is a function of the amount of good consumed, and then
evaluated MU at optimum x* and y*.
We can then rewrite all this as:

MUX - λPX = 0
MUY – λPY = 0
I = PX·x + PY·y

These are the FOC for the Lagrangian problem in Section III. But what do they mean
economically?

MUX is the marginal gain from buying and consuming another unit of X, and λPX is the marginal
cost in terms of forgone utility (price of X times marginal utility of the income) of doing so.
Likewise for Y. And I = PX·x + PY·y means the budget is exhausted. (Since for both X and Y
MU > 0 one would buy more if budget wasn’t exhausted.)

Now, what would it mean if the optimum were actually inside the budget constraint, so that the
consumer didn’t have to spend the entire budget to get the optimal basket?

First, it would have to be the case that MUX(x*) = MUY(y*) = 0, so the consumer wouldn’t want
more even though they could afford more.

So MUX - λPX = 0 means λ = 0 or MUX(x*)/PX = λ = 0. MU for each good is zero at this point,
and the consumer would not benefit from more income since s/he isn’t spending it all anyway.

But also, I = PX·x* + PY·y* > 0 and λ = 0. Write down in words what these two mathematical
statements mean.

Next, suppose instead we have a corner solution where only one good is consumed. For any
good not consumed, say X, it must be that

MUX/PX < λ or MUX - λPX < 0 and x* = 0.

In words, the gain from the first little bit of X consumed wouldn’t be as valuable to the consumer
as the MU of income devoted to other uses, and hence s/he consumes no X.

We’ve just developed the Kuhn-Tucker First Order Conditions.

KT FOC

MUX - λPX ≤ 0, x ≥ 0, and one must hold with equality, i.e. x(MUX - λPX) = 0.

MUY – λPY ≤ 0, y ≥ 0, and one must hold with equality, i.e. y(MUY – λPY) = 0.

I - PX·x + PY·y ≥ 0, λ ≥ 0, and one must hold with equality, i.e. λ(I - PX·x + PY·y) = 0.
If you don’t understand, you weren’t paying sufficient attention. Go back and reread until this
seems intuitively clear.

III. Mathematics of First Order Conditions

I assume you know what a partial derivative is, and how to set up and solve a Lagrangian
maximization problem. So here we will simply set one up, solve, and then extend to cover
Kuhn-Tucker with one constraint. Part IV will cover multiple constraints.

Suppose now we call our two goods X1 and X2 with prices P1 and P2 respectively. (This will
simplify our notation when we extend to the case of more than two goods.)

Consumer’s problem: choose x1 x2 to maximize u = u(x1, x2) subject to I = P1·x1 + P2·x2.

The Lagrangian function is

L(x1, x2, λ) = u(x1, x2) + λ(I – P1·x1 + P2·x2)

Assuming we know the optimum lies on the constraint and both goods will be consumed (that
is, points 1 and 2 in the previous section), we have the following First Order Conditions:

FOC

Li = MUi - λ Pi = 0, where Li is first partial derivative of L with respect to xi, i = 1, 2

Lλ = I – P1·x1 + P2·x2 = 0, where Lλ is the first partial derivative of L with respect to λ.

Three equations, three unknowns (x1, x2, λ) and easily solved for x1*, x2*, λ*.

The interpretation is simple.

Li = 0 means “consume more xi so long as MUi > λ Pi . Optimal xi* satisfies MUi = MCi.” Note
MUi is the marginal benefit of buying xi and λPi is the opportunity cost in utility terms of
devoting another unit of income to purchasing more xi.

Lλ = 0 means the consumer has exhausted the budget.

Hence simultaneous satisfaction of all these conditions means there’s no way to make the
consumer better off, given these preferences and constraints.
And λ*, the gradient or Lagrange multiplier, is the “shadow price,” the value at the margin of
relaxing the income constraint in utility terms, i.e. marginal utility of income. (See Dixit Chapter
4 for further discussion.)

BUT this assumed we knew that 1 and 2 were both satisfied. In general we don’t know and can’t
assume this, as we saw in Section II, so we need to augment our Lagrangian FOC with the KT
FOC to allow for the possibility that at the optimum, some goods might not be consumed at all,
or perhaps the budget might not be exhausted. So…

KT FOC

Li = MUi – λPi ≤ 0, xi ≥ 0, and xiLi = 0, with i = 1, 2. (Note that one of the inequalities must hold
with equality, guaranteed by the third condition. This third condition is called complementary
slackness since one holds with equality and the other can be “slack.” And note it is
“complementary,” not “complimentary.” Either he consumes the good until MBi – MCi = 0 and
xi > 0, or he doesn’t consume it at all because MUX - λPX < 0 and so xi = 0.)

Lλ = I – P1·x1 + P2·x2 ≥ 0, λ ≥ 0, and one must hold with equality, i.e. λLλ = 0. (Either she
exhausts the budget and MU income is positive, she’d like more income if she could get it, or she
doesn’t exhaust the budget and MU income is zero. The complementary slackness condition
guarantees one or the other will hold.)

By now it should be intuitive what these mean.

Solution of these FOC is straightforward. We check all the possibilities and choose the solution
that gives the highest value to the objective function. Often there are tricks to simplify this task,
e.g. if we have a Cobb-Douglas utility function then we know xi > 0 for all i, since otherwise u =
0. And since MUi > 0 for all xi > 0, the person will always consume more if they can, so the
constraint will be binding.

Hence with Cobb-Douglas we know Li = 0 and Lλ = 0, so the regular Lagrangian method is


sufficient and we can avoid checking other possibilities. Thinking about the properties of
functions we’re working with can help us eliminate some possibilities,. But KT will work
regardless.

Extending to more than two choice variables is simple. For xi with i = (1, 2, 3, …, n), the KT
FOC are identical to those above, only now we have n + 1 conditions and unknowns for which to
solve. It remains straightforward.

IV. Multiple Constraints


In Section I we also noted the possibility of multiple constraints. If there are multiple
constraints, some might not be binding. As we’ve seen, the KT method can handle a non-
binding constraint, and the extension to multiple constraints is straightforward.

But what do we mean by multiple constraints? Here’s an example, using the consumer utility
maximization problem. A man goes to the market to buy groceries. He will maximize utility
subject to the usual budget constraint I ≥ Σ Pixi, but also has two additional constraints. First, he
has to buy at least two pounds of tomatoes for a dish his wife is planning. Second, the store is
having a sale on salmon, but limits each customer to a maximum of five pounds. Hence the
additional constraints are xT ≥ 2 and xS ≤ 5. When we set up the Lagrangian, each constraint will
have its own Lagrange multiplier, λj for the jth constraint, j = 1…m, if we have m constraints.

Multiple constraints appear in many other settings. For example, we might be looking for a
least-cost blend of various grains and other ingredients for a cattle feed (the objective), subject to
minimum constraints on protein, fat, and other nutrients. Or in a production problem, factor
availabilities might impose minimums or maximums on how much of each input we can use. Or
in pre-revolutionary France, the much-hated gabelle was a tax that required every person to buy
a minimum of 8 pounds of salt at monopoly prices from the Royal salt monopoly. Wartime
rationing is yet another source of additional constraints in a consumer problem.

Also, note that while the above constraints are linear, constraints can be nonlinear too. For
example, a PPF (production possibilities frontier) is a constraint on how much output can be
produced, and a neoclassical PPF with specialized inputs is obviously nonlinear.

Here is the Lagrangian for the “man buying groceries” consumer problem. Let x1 be tomatoes
and x2 be salmon

L(x1, x2, … xn, λ1, λ2, λ3) = u(x1 … xn) + λ1(I – Σ Pixi) + λ2(2 – x1) + λ3(5 – x2)

The KT FOC are

L1 = MU1 – λ1P1 – λ2 ≤ 0, x1L1 = 0

L2 = MU2 – λ1P2 – λ3 ≤ 0, x2L2 = 0

Li = MUi – λ1Pi ≤ 0, xi ≥ 0, xiLi = 0, for i = 3 … n.

Lλ1 = I – Σ Pixi ≥ 0, λ1 ≥ 0, λ1 Lλ1 = 0

Lλ2 = 2 – x1 ≤ 0, λ2 ≥ 0, λ2 Lλ2 = 0 (Since 2lbs is a minimum instead of maximum constraint for x1


the inequality is “less than or equal to.”)

Lλ3 = 5 – x1 ≥ 0, λ3 ≥ 0, λ3 Lλ3 = 0
Note that if for a particular problem a constraint j must hold with equality, then the first order
condition with respect to λj is simply Lλj = 0. Obviously such a constraint is binding.

Note too that if there are two constraints and both are binding, the solution will be at their
intersection.

V. Summary

Kuhn-Tucker programming extends our Lagrangian method to cover cases in which the usual
optimality conditions aren’t satisfied with equality, e.g. consumer problems where some goods
aren’t consumed at all or cases where one or more constraints aren’t binding.

There are cases in which KT won’t work, but for “well-behaved” functions it will, and most
problems in economics involve “well-behaved” functions, i.e. objective functions and constraint
functions that satisfy convexity requirements. For details, see Dixit, Chapter 6. In some real
world research applications the convexity requirements won’t hold, nor will continuity and other
assumptions, but understanding the basic principles of optimization will take you a long way in
figuring out how to address these.

You might also like