intqpipopt Solves a linear quadratic problem. Calling Sequence xopt = intqpipopt(H,f) xopt = intqpipopt(H,f,intcon) xopt = intqpipopt(H,f,intcon,A,b) xopt = intqpipopt(H,f,intcon,A,b,Aeq,beq) xopt = intqpipopt(H,f,intcon,A,b,Aeq,beq,lb,ub) xopt = intqpipopt(H,f,intcon,A,b,Aeq,beq,lb,ub,x0) xopt = intqpipopt(H,f,intcon,A,b,Aeq,beq,lb,ub,x0,options) xopt = intqpipopt(H,f,intcon,A,b,Aeq,beq,lb,ub,x0,options,"file_path") [xopt,fopt,exitflag,output] = intqpipopt( ... ) Parameters H : a symmetric matrix of double, represents coefficients of quadratic in the quadratic problem. f : a vector of double, represents coefficients of linear in the quadratic problem intcon : a vector of integers, represents which variables are constrained to be integers A : a matrix of double, represents the linear coefficients in the inequality constraints A⋅x ≤ b. b : a vector of double, represents the linear coefficients in the inequality constraints A⋅x ≤ b. Aeq : a matrix of double, represents the linear coefficients in the equality constraints Aeq⋅x = beq. beq : a vector of double, represents the linear coefficients in the equality constraints Aeq⋅x = beq. lb : a vector of double, contains lower bounds of the variables. ub : a vector of double, contains upper bounds of the variables. x0 : a vector of double, contains initial guess of variables. options : a list containing the parameters to be set. file_path : path to bonmin opt file if used. xopt : a vector of double, the computed solution of the optimization problem. fopt : a double, the value of the function at x. exitflag : The exit status. See below for details. output : The structure consist of statistics about the optimization. See below for details. Description Search the minimum of a constrained linear quadratic optimization problem specified by : \begin{eqnarray} &\mbox{min}_{x} & 1/2⋅x^T⋅H⋅x + f^T⋅x \\ & \text{subject to} & A⋅x \leq b \\ & & Aeq⋅x = beq \\ & & lb \leq x \leq ub \\ & & x_i \in \!\, \mathbb{Z}, i \in \!\, intcon\\ \end{eqnarray} The routine calls Bonmin for solving the quadratic problem, Bonmin is a library written in C++. The exitflag allows to know the status of the optimization which is given back by Bonmin. exitflag=0 : Optimal Solution Found. exitflag=1 : InFeasible Solution. exitflag=2 : Output is Continuous Unbounded. exitflag=3 : Limit Exceeded. exitflag=4 : User Interrupt. exitflag=5 : MINLP Error. For more details on exitflag see the Bonmin page, go to http://www.coin-or.org/Bonmin The output data structure contains detailed informations about the optimization process. It has type "struct" and contains the following fields. output.constrviolation: The max-norm of the constraint violation. Examples Examples Authors Akshay Miterani and Pranav Deshpande