shadow price in linear programming 对shadow price 一个较好的解释

来源:互联网 发布:js 获取td的内容 编辑:程序博客网 时间:2024/06/06 02:10

shadow price in linear programming

up vote4down votefavorite
2

I am quite confuse with the explaination of Shadow Price found from Internet.

It can be understood as: the value of an addition revenue if the constraint is relaxed.

or

How much you would be willing to pay for an additional resource.

The problem:

maximize 5x1 + 4x2 + 6x3subject to 6x1 + 5x2 + 8x3 <= 16   (c1)10x1 + 20x2 + 10x3 <= 35           (c2)0 <= x1, x2, x3 <= 1

Solving this problem, we get the shadow price of c1 = 0.727273, c2 = 0.018182.

Comparing c1 and c2, if 1 constraint can be relaxed, we should relax c1 instead of c2?

Thanks..

shareimprove this question
 add comment

1 Answer

activeoldestvotes
up vote8down voteaccepted

Here's perhaps a better way to think of the shadow price. (I don't like the word "relax" here; I think it's confusing.)

For maximization problems like this one the constraints can often be thought of as restrictions on the amount of resources available, and the objective can be thought of as profit. Then the shadow price associated with a particular constraint tells you how much the optimal value of the objective would increase per unit increase in the amount of resources available. In other words, the shadow price associated with a resource tells you how much more profit you would get by increasing the amount of that resource by one unit. (So "How much you would be willing to pay for an additional resource" is a good way of thinking about the shadow price.)

In the example you give, there are 16 units available of the first resource and 35 units available of the second resource. The fact that the shadow price of c1 is 0.727273 means that if you could increase the first resource from 16 units to 17 units, you would get an additional profit of about$0.73. Similarly, if you could increase the second resource from 35 units to 36 units then you would get an additional profit of about $0.02.

So if you could increase just one resource by one unit, and the cost of increasing the first resource is the same as that of increasing the second resource (this assumption is not part of the model), then, yes, you should definitely increase the first resource by one unit.


求解优化问题,利用拉格朗日松弛法时,拉格朗日乘子就相当于shadow price 的意思,当增加约束一个单位,objective will get more profit,so it can be used to change some variable to make the problem converge