# Tag Info

20

For books with a focus on industrial applications, see this other question of this forum As textbooks, I would recommend to have a look at: General Intro to OR: W. Winston. Operations Research: Applications and Algorithms (4th Ed.). Brooks/Cole. 2004. Modeling: H.P. Williams. Model building in mathematical programming. John Wiley & Sons, 2013. D. Chen, R....

12

SCIP does not currently support any trigonometric functions as of this post from May 2018. COUENNE appears to handle $\sin$ and $\cos$ expressions. ANTIGONE appears to not support any trigonometric functions as of 2013. BARON states in the manual to not support any trigonometric functions in March 2019. LINDOGLOBAL supports cos, sin, tan, cosh, sinh, ...

10

No, the KKT conditions aren't applicable to mixed-integer programming problems with integer variables. The theory behind the KKT conditions depends on the objective and constraint functions being differentiable but functions of integer variables aren't differentiable. It's certainly possible to enforce integrality constraints using continuous variables. ...

7

Here is an option for MATLAB users which is not mentioned in any other answers. YALMIP's BMIBNB iI a global branch and bound solver https://yalmip.github.io/solver/bmibnb/. It is used in combination with (i.e., calls) a MILP solver (such as CPLEX, GUROBI, SCIP, MOSEK) and a "call back" for evaluation continuous variable local optimization solver (such as ...

6

There is a systematic way of finding the infeasibility of your problem. You would like to find the Irreducibly Inconsistent System (IIS) of your model. This technology is available in CPLEX and Gurobi for MIP and in BARON for MINLP. Since you have implemented your model in Pyomo (in case you do not have a BARON license), you can submit the problem to the ...

6

From the presentation given by Vigerske, S. (2015), it is noted that the solvers Couenne by P. Belotti and LindoAPI by Y. Lin and L. Schrage can handle trigonometric expressions. Both are deterministic global optimisation solvers for MINLP. Reference [1] Vigerske, S. (2015). MINLP - Global Solvers. Available from: http://co-at-work.zib.de/files/...

5

If you have the mathematical formulas for your problem (i.e., it's not black box), you can use a local MINLP solver, such as BONMIN, KNITRO, or MINOTAUR, or a deterministic global optimisation solver such as ANTIGONE, BARON, Couenne, or Octeract Engine. If your problem is black box but you have access to derivatives, and function evaluations, I believe that ...

5

Octeract Engine (the solver I develop), is a deterministic global MINLP solver that supports all trigonometric functions (including hyperbolic functions).

5

You can try adding a constraint forcing one of the affected variable to be nonzero. If the model becomes infeasible, you can try to find the conflicting constraints. If the model stays feasible, this means that your objective function represents other priorities than you expected.

5

As mentioned in the comments, CPLEX cannot handle MINLP problems which are not Mixed-Integer Second-order cones (MISOCP) and Mixed-integer quadratic or quadratically constrained programs (MIQP and MIQCP). Given that you have a general nonlinear constraint, you cannot write it in a matrix was, meaning that you cannot express the exponential constraint $g(x)=\... 4 This is a non-convex global optimisation problem. The state-of-the-art way to solve this is to use a factorable relaxation. A key insight here is that$e^{-\alpha X}$is convex (since your$\alpha$is positive). The methodology would be as follows: Introduce a new auxiliary variable$w=e^{-\alpha X}$You now have$Z=Yw$, and$w=e^{-\alpha X}$Because both ... 4 Assuming the continuous relaxation is convex you can most likely use conic optimization with the exponential cone. The Mosek modelling cookbook has the details. Unsurprisingly Mosek can solve the mixed integer version of such problems. 4 Knitro offers two variations of branch-and-bound for mixed-integer nonlinear programs. The first (and default method) is a standard branch-and-bound method that solves a continuous nonlinear optimization problem at each node by relaxing the integer variables. The second (the Quesada-Grossmann approach) solves linear programming subproblems at most nodes and ... 3 I only skimmed your model so others may be better able to point to the error directly, but here are some reasons this may occur: Constraints: as you mention, perhaps they're set so that it's not possible to apply the treatment. E.g, is the budget accidentally set too tightly so it can't afford it? (There are several sums in your budget_rule - I'd double ... 3 As KNITRO's manual says, it's vanilla branch-and-bound: the integer variables are relaxed to continuous, and solving that relaxed problem provides the bound for branch and bound. Since in this case the relaxation of the problem is the problem itself made continuous, this bound is only valid if the problem is convex: It is primarily designed for convex ... 3 An alternative approach to binary variables or semicontinuous variables is the following cubic polynomial inequality: $$x(x-L_B)(U_B-x)\ge 0$$ Because$x \ge 0$, this constraint enforces $$(x = 0) \lor (x - L_B \ge 0 \land U_B - x \ge 0),$$ as desired. The case$(x - L_B \le 0 \land U_B - x \le 0)$is prevented by$L_B < U_B$. After further consideration,... 2 You may find a partial answer to your question in the following article (forthcoming in OR) by JP Vielma and J Huchette https://arxiv.org/abs/1708.00050 In that paper, the authors consider the problem of approximating non-linear functions of one or two variables in the objective via the disjunction of multiple hyperplanes. You can then pass the resulting MIP ... 2 Welcome to OR Stack Exchange. Your question is not clear. You are interested in special points in discrete optimization spaces. But you describe a mixed-variable problem involving both continuous variables$x$and integer variables$y$. For a given$y$, the theory of calculus of variations applies to the continuous subproblem on$x$. But I don't think you ... 1 If a deterministic global optimisation solver (such as Baron) reports a local solution, that solution is reliable. If the solver is terminated prematurely, the global solver will return the best solution it has found so far. For NLP, it is quite common that global solvers find the global solution very early on, and then spend the majority of time proving it ... 1 Technically, your statement is correct, but nowadays it depends on who you're talking to. Historically, to$\min f(x) s.t. ...$means exactly what we see: to find the minimal value. Not some value that's smaller in some arbitrary neighborhood, the minimal value. Ergo, the semantically correct way is to use "solution" for all global solutions, and &... 1 This question is a matter of semantics. If by "solution", you mean the global optimum, then yes, "the" (a) solution to an MINLP is a global optimum (note that some problems have more than one globally optimum solution). If, however, by "solution", you mean a local, but not necessarily, global, optimum, then the solution to an ... 1 Maybe you can replace your equality constraint with two inequality$\leq$and$\ge\$ constraints. Also, have a look at this link

1

Try to take a look at these non-convex programming techniques: DC Programming and DCA http://www.lita.univ-lorraine.fr/~lethi/index.php/dca.html https://link.springer.com/article/10.1007/s10107-018-1235-y

Only top voted, non community-wiki answers of a minimum length are eligible