symphony Solves a mixed integer linear programming constrained optimization problem. Calling Sequence xopt = symphony(nbVar,nbCon,c,isInt,lb,ub,A,conLB,conUB) xopt = symphony(nbVar,nbCon,c,isInt,lb,ub,A,conLB,conUB,objSense) xopt = symphony(nbVar,nbCon,c,isInt,lb,ub,A,conLB,conUB,objSense,options) [xopt,fopt,status,output] = symphony( ... ) Parameters nbVar : a double, number of variables. nbCon : a double, number of constraints. c : a vector of double, represents coefficients of the variables in the objective. isInt : a vector of boolean, represents wether a variable is constrained to be an integer. lb : a vector of double, represents lower bounds of the variables. ub : a vector of double, represents upper bounds of the variables. A : a matrix of double, represents matrix representing the constraint matrix conLB ≤ A⋅x ≤ conUB. conLB : a vector of double, represents lower bounds of the constraints conLB ≤ A⋅x ≤ conUB. conUB : a vector of double, represents upper bounds of the constraints conLB ≤ A⋅x ≤ conUB. objSense : The sense (maximization/minimization) of the objective. Use 1(sym_minimize ) or -1 (sym_maximize) here. options : a list containing the parameters to be set. xopt : a vector of double, the computed solution of the optimization problem. fopt : a double, the value of the function at x. status : status flag returned from symphony.See below for details. output : The output data structure contains detailed information about the optimization process. See below for details. Description Search the minimum or maximum of a constrained mixed integer linear programming optimization problem specified by : \begin{eqnarray} &\mbox{min}_{x} & f^T⋅x \\ & \text{subject to} & conLB \leq A⋅x \leq conUB \\ & & lb \leq x \leq ub \\ & & x_i \in \!\, \mathbb{Z}, i \in \!\, I \end{eqnarray} The routine calls SYMPHONY written in C by gateway files for the actual computation. The status allows to know the status of the optimization which is given back by Ipopt. status=227 : Optimal Solution Found status=228 : Maximum CPU Time exceeded. status=229 : Maximum Number of Node Limit Exceeded. status=230 : Maximum Number of Iterations Limit Exceeded. For more details on status see the symphony documentation, go to http://www.coin-or.org/SYMPHONY/man-5.6/ The output data structure contains detailed informations about the optimization process. It has type "struct" and contains the following fields. output.iterations: The number of iterations performed during the search Examples Examples Authors Keyur Joshi, Saikiran, Iswarya, Harpreet Singh