Models Mixed-Integer Quadratic Programming Problems: mipq prob: Difference between revisions
From TomWiki
Jump to navigationJump to search
(Created page with "{{Part Of Manual|title=TOMLAB Models|link=TOMLAB Models}} In <tt>mipq_prob</tt> there are 4 mixed-integer quadratic programming test problems with sizes to about 120 v...") |
No edit summary |
||
Line 12: | Line 12: | ||
<math> | <math> | ||
\begin{array}{ll}\min\limits_{x} & f(x) = \frac{1}{2} x^T F x + c^T x \\ | \begin{array}{ll}\min\limits_{x} & f(x) = \frac{1}{2} x^T F x + c^T x \\ | ||
& \\s/t & \begin{array}{lcccl}x_{L} & \leq & x & \leq & x_{U}, \\b_{L} & \leq & A x & \leq & b_{U}, ~x_{j} \in \ | & \\s/t & \begin{array}{lcccl}x_{L} & \leq & x & \leq & x_{U}, \\b_{L} & \leq & A x & \leq & b_{U}, ~x_{j} \in \mathbb{N}\ ~~\forall j \in $I$ \\\end{array}\end{array} | ||
</math> | </math> | ||
where <math>c, x, x_L, x_U \in \ | where <math>c, x, x_L, x_U \in \mathbb{R}^n</math>, <math>A \in \mathbb{R}^{m_1 | ||
\times n}</math>, and <math>b_L,b_U \in \ | \times n}</math>, and <math>b_L,b_U \in \mathbb{R}^{m_1}</math>. The variables <math>x | ||
\in I</math>, the index subset of <math>1,...,n</math> are restricted to be | \in I</math>, the index subset of <math>1,...,n</math> are restricted to be | ||
integers. | integers. |
Revision as of 12:53, 8 December 2011
This page is part of TOMLAB Models. See TOMLAB Models. |
In mipq_prob there are 4 mixed-integer quadratic programming test problems with sizes to about 120 variables and slightly more than 100 constraints. In order to define the problem n and solve it execute the following in Matlab:
Prob = probInit('miqp_prob',n); Result = tomRun('',Prob);
The basic structure of a general mixed-integer quadratic programming problem is:
where , , and . The variables , the index subset of are restricted to be integers.
An example of a problem of this class, (that is also found in the TOMLAB quickguide) is mipqQG:
File: tomlab/quickguide/miqpQG.m
% miqpQG is a small example problem for defining and solving
% mixed-integer quadratic programming problems using the TOMLAB format.
c = [-6 0]';
Name = 'XP Ref Manual MIQP';
F = [4 -2;-2 4];
A = [1 1];
b_L = -Inf;
b_U = 1.9;
x_L = [0 0]';
x_U = [Inf Inf]';
% Defining first variable as an integer
IntVars = 1;
% Assign routine for defining a MIQP problem.
Prob = miqpAssign(F, c, A, b_L, b_U, x_L, x_U, [], ...
IntVars, [], [], [], Name, [], []);
% Calling driver routine tomRun to run the solver.
% The 1 sets the print level after optimization.
Result = tomRun('cplex', Prob, 1);
%Result = tomRun('oqnlp', Prob, 1);
%Result = tomRun('miqpBB', Prob, 1);
%Result = tomRun('xpress-mp', Prob, 1);
%Result = tomRun('minlpBB', Prob, 1);