Originally posted by: SystemAdmin
Hi,
Many thanks for your information. I want to explain why I can not minimize h(x) directly via cplex and what I want to do .
The original problem I want to solve is a mixed-integer quadratic program:
(P) min q(z)+\sum^n_{i=1} d_ix_i^2
s.t. (x,z)\in Q
0<=x_i<=y_i, i=1,...,n
y_i\in{0,1}, i=1,...,n
where q(z) is a convex quadratic function, d_i>0 for each i, Q is a polyhedron in (x,z) space,.
I know this problem can be directly handled by CPLEX. But I am trying to implement
a new method in which a class of so-called perspective cuts are generated and added
dynamically at each nodes of the branch-and-bound tree. This kind of perspective
cuts are based on a reformulation of the original problem. We have known that the problem (P)
is equivalent to the following semi-infinite MIQP:
(P1) min q(z)+\sum^n_{i=1} v_i
s.t. v_i>=C(x_i,y_i; x'_i), i=1,...,n, x'_i\in
0,1,
(x,z)\in Q
0<=x_i<=y_i, i=1,...,n
y_i\in{0,1}, i=1,...,n
where v_i>=C(x_i,y_i; x'_i) is a linear valid inequality (perspective cut) at point x_i'. The above
problem cannot be solved directly because there are infinite number (uncountable) of cuts constraints.
Nevertheless, it is possible to use an iterative approximation technique whereby a small subset of the cuts
are used to construct a QP relaxation (after relaxing y_i\in{0,1} to y_i\in
0,1).
We may use cutcallback to generate the cuts dynamically at each node of the branch-and-bound search
tree and the QP relaxation subproblem gives a lower bound to the original problem (P). If we input
the objective function of (P1) to CPLEX and solve the QP relaxation (after adding cuts) at each node,
then CPLEX does not give us an optimal solution of (P) when it terminates because the upper bound
calculated by the objective function of (P1) is NOT necessarily an upper bound of the optimal value of (P).
This is way we need to insert a new upper bound whenever a feasible solution (where y_i is binary) is found, i.e.,
the upper bound should be computed by the objective function of (P) instead of (P1).
#CPLEXOptimizers#DecisionOptimization