Re: LinearProgramming[]
- To: mathgroup at smc.vnet.net
- Subject: [mg123528] Re: LinearProgramming[]
- From: Virgil Stokes <vs at it.uu.se>
- Date: Sat, 10 Dec 2011 07:28:53 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <201112091058.FAA03920@smc.vnet.net>
On 09-Dec-2011 11:58, é?? å?? wrote:
> We know all constraints in LinearProgramming[] involve ">=" or "<=".
>
> How can I solve the following problem with LinearProgramming[]:
>
> Assuming x+2y-z>0,x+y-z>=60,y+2z>12,x>0,y>0 and z>1
>
> we want to get the minimum of 2x+3y+4z in the abrove constraints.
>
> Note that there are ">" other than">=" in the constraints we have
> given.
>
If an LP problem has a unique optimal solution then it must lie along the
boundary of a polyhedron formed by the constraints. This implies that strictly
less than (<) or strictly greater than (>) constraints do not fit into a LP
problem formulation; i.e. the solution is no longer guaranteed to be along a
boundary. This means that the function LinearProgramming is not applicable for
"<" and ">" constraints.
I believe that you will find that if these strict constraints have any effect on
an optimization problem, the effect will be that there is no unique solution to
the problem --- this applies to both linear and nonlinear optimization problems.
Thus, I suggest that you try to reformulate your problem such that it can be
written without any strict constraints. Here is your problem reformulated with
">" replaced by ">=".
m = {{1, 2, -1}, {1, 1, -1}, {0, 1, 2}};
b = {0, 60, 12}; s = {1, 1, 1};
c = {2, 3, 4};
bs = Transpose[{b, s}];
LinearProgramming[c, m, bs, {0, 0, 1}]
which gives {51,10,1} as the solution to,
minimize 2x + 3y + 4z
subject to:
x + 2y - z >= 0
x + y - z >= 60
y + 2z >= 12
x >= 0, y >= 0, z >= 1
Note, two of the constraints (6 in total) in your original problem are not
satisfied. It might useful for you to plot the polyhedron formed by these
constraints --- graphical analysis can be enlightening.
- References:
- LinearProgramming[]
- From: é å <shlwell1988@gmail.com>
- LinearProgramming[]