MINLP instead of indicator constraints?
Summary
The article explores an alternative to traditional indicator constraints in Mixed-Integer Programming (MIP) by proposing their replacement with simple multiplications, which converts the problem into a Mixed-Integer Nonlinear Program (MINLP). Indicator constraints, defined as implications like "δ=0 => linear constraint", offer benefits such as mitigating numerical issues associated with big-M constraints and providing a convenient modeling abstraction. However, they are limited to linear constraints and single binary variables. The proposed MINLP approach, exemplified by transforming "δ=1 => x ≤ y" into "x·δ ≤ y·δ", introduces non-linearities. Using a location selection problem (maximizing minimum distance for k out of n locations), four models were compared: MIP with indicators, two MINLP variants, and a MIP with tightened big-M constraints. Experiments with n=50, k=10 and n=100, k=15 revealed that MINLP models, solved by Baron, performed surprisingly well, often with a single node, and sometimes outperformed Cplex using indicator variables. Nevertheless, the MIP model employing carefully tightened big-M constants consistently achieved the fastest solution times.
Key takeaway
For optimization modelers struggling with complex indicator constraints or big-M numerical instability, consider formulating these implications as MINLP multiplications. While seemingly unconventional, experiments show MINLP solvers like Baron can achieve competitive or even superior performance compared to MIPs with indicators, especially when big-M constants are not optimally tightened. You should benchmark this approach against traditional MIPs, particularly for problems where indicator constraints are difficult to linearize.
Key insights
Replacing indicator constraints with direct multiplication creates competitive MINLP models.
Principles
- Indicator constraints mitigate big-M numerical issues.
- Tightened big-M constants improve MIP solver performance.
- MINLP solvers show surprising efficiency for certain structures.
Method
Indicator constraints "δ=1 => x ≤ y" can be replaced by "x·δ ≤ y·δ" or "x·(1-δ) ≤ y·(1-δ)" for "δ=0", converting MIPs to MINLPs. Multiplying both sides is more general.
In practice
- Consider MINLP for complex indicator constraints.
- Always derive smallest big-M constants.
- Test MINLP solvers like Baron for performance.
Topics
- Mixed-Integer Programming
- Mixed-Integer Nonlinear Programming
- Indicator Constraints
- Big-M Method
- Optimization Solvers
- Baron
- Cplex
Best for: Research Scientist, AI Scientist, Consultant, Software Engineer
Related on AIssential
Editorial summary, takeaway, and curation by AIssential. Original article published by Yet Another Math Programming Consultant.