Hello Simone,
if the solution of a linear program is unique, it will always be in a
vertex of the
convex polyeder described by the constraints.
The objective function gives the optimization direction and hence
decides
which
vertex of the polygon is the solution.
For a two dimensional problem lets think of an polygon given by the
following vertices:
(0,0) (1,1) (2,1) (3,0)
This corresponds to the following inequalities:
s.t. c1 : x - y >= 0; # (0,0)-(1,1)
s.t. c2 : y <= 1; # (1,1)-(2,1)
s.t. c3 : x + y <= 3; # (2,1)-(3,0)
s.t. c4 : x >=0; # (3,0)-(0,0)
If our optimization direction is (1,1) the objective is
maximize obj : x + y;
The solution is vertex (2,1)
If our optimization direction is (-1,1) the objective is
maximize obj: -x + y;
The solution is vertex (1,1);
The complete model is:
var x;
var y;
# uncomment the appropriate objective
#maximize obj : x + y; # direction (1,1);
maximize obj : -x + y; # direction (-1,1);
s.t. c1 : x - y >= 0; # (0,0)-(1,1)
s.t. c2 : y <= 1; # (1,1)-(2,1)
s.t. c3 : x + y <= 3; # (2,1)-(3,0)
s.t. c4 : x >=0; # (3,0)-(0,0)
solve;
printf "x = %6.3f, y = %6.3f\n", x, y;
end;
Best regards
Xypron
Simone Atzeni wrote:
Hi all,
I'm looking for two functions that could represent simple KPIs.
In other world, I would like two MILP, in this way:
MILP 1:
MAX J = 0.5 * Z1 + 0.5 * Z2
Z1 = -AX + C
Z2 = BX + D
and
MILP 2:
MAX J = 0.32 * Z1 + 0.68 * Z2
Z1 = -AX + C
Z2 = BX + D
Z1 and Z2 are the values of the KPI and they depend on X. The
constraints should be equal but the results (the values of Z1 and
Z2)
should be different changing the coefficients fo the objective
function, in this case (0.5 - 0.5) for the MILP1 and (0.32 - 0.68)
for
the MILP 2.
I can't find a good function. I need just functions where Z1 and Z2
depend on X but changing the coefficients in the objective functions
change the values of Z1, Z2 and X.
MILPs I'm using are the follow:
MAX J = 0.5 Z.1 + 0.5 Z.2
Z.1 = 5X (0.196116135138184 Z.1 - 0.98058067569092 U.1 <= 0) (the
equations have been normalized)
Z.2 = -3X + 4 (0.196116135138184 Z.2 + 0.115384615384615 U.1 <=
0.153846153846154)
and
MAX J = 0.32 Z.1 + 0.68 Z.2
Z.1 = 5X
Z.2 = -3X + 4
This is the picture of the two functions:
Both MILPs have the same solution.
Z.1 = 1
Z.2 = 0.666795
X = 0.2
In this case the weights, (0.5 - 0.5) for the MILP1 and (0.32 -
0.68)
for the MILP 2, don't influence the results of the MILP. I want
something in a way that the weights influence the results, so that
the
two MILPs have different result but they should being equal.
Can someone help me?
Thanks
Simone
_______________________________________________
Help-glpk mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/help-glpk