You're faced with unsolvable integer programming constraints. How can you navigate this challenging scenario?
In the realm of integer programming, encountering unsolvable constraints can seem like hitting a brick wall. Here's how to approach this conundrum:
- Relax the constraints. Determine if a less restrictive model still addresses the problem effectively.
- Explore alternative solutions. Use heuristic or approximation algorithms to find near-optimal solutions.
- Consult domain experts. Their insights may reveal overlooked angles or simplifications that make the problem tractable.
Have you faced similar challenges? What strategies worked for you?
You're faced with unsolvable integer programming constraints. How can you navigate this challenging scenario?
In the realm of integer programming, encountering unsolvable constraints can seem like hitting a brick wall. Here's how to approach this conundrum:
- Relax the constraints. Determine if a less restrictive model still addresses the problem effectively.
- Explore alternative solutions. Use heuristic or approximation algorithms to find near-optimal solutions.
- Consult domain experts. Their insights may reveal overlooked angles or simplifications that make the problem tractable.
Have you faced similar challenges? What strategies worked for you?
-
It’s important to understand what it means to have an unsolvable constraint. If that means no feasible solutions can be found with the addition of a constraint, the right approach would be to investigate the infeasibility and perhaps with multiple data sets reflective of business scenarios. This is to ensure it is the newly added integer constraint that needs to be modeled differently, which can then be done several ways.
-
When integer programming models yield infeasible constraints, it’s often due to overly stringent conditions or conflicting objectives inherent in complex supply chain scenarios. A practical first step involves sensitivity analysis, pinpointing exact constraints causing bottlenecks. From there, leverage techniques like constraint aggregation or variable decomposition—these can simplify interdependent requirements without compromising model integrity. Strategic pivoting toward scenario-based optimisation also helps, capturing trade-offs between different constraint priorities, enabling nuanced decision-making despite strict mathematical limits.
-
The unsolvable constraints must be replaced by soft constraints. The notion of unsolvable constraint arises when the problem becomes topologically too difficult to employ any solver. Similar to the Ricci flow in math, such constraints must be replaced by soft constraints that allows the use of a solver. It is indeed what is done in integer programming. For example, B&B relies on repetitive use of Simplex algorithm (which is designed not for integer but linear programming), where we artificially add a soft constraint while opting out from using the integer constraint.
-
The client rarely has an idea of what they want, and often the constraints are a reflection of that. Ideally, it would always be best to explain to the client why something is a problem and find a way to mitigate it.