0

I have a geometric optimization problem which I think it can be formulated as a mixed integer linear problem. It seems similar to MIP scheduling problems.

I have a set of N long drawers (or troughs, grooves, gutters, channels...), each with a known length (and width).

I need to divide each such drawer into multiple slots by inserting partitions along the length of the drawer. The partitions may be inserted only at specified points along each drawer or within pre-specified intervals. Not all partition insertion locations have to be used.

I am given a set of K target slot types with Nk identical slots per slot type.
Each slot type has a minimum slot length but no maximum*.
There are no ordering requirements on the slots within the drawer(s).

I need to find the optimal partition of all the drawers as to maximize the number of assigned slots.
This is somewhat related to minimizing the total length of the assigned slots.

Can this be formulated as a MIP problem and if so how?

* There is also a minimum area constraint, but this can be avoided by keeping a different min-slot-length per each input drawer width.

Adi Shavit
  • 16,743
  • 5
  • 67
  • 137
  • I would do: get some blank pieced of paper, and start writing down a mathematical model. It will not be right the first time, but you will be forced to look at the problem on a more systematic way. Afterwards it is easier to see if this can result in a MIP model. – Erwin Kalvelagen Jun 04 '20 at 20:55
  • @ErwinKalvelagen: Thanks. I've been thinking about this a lot before posting. When the partitions can be placed anywhere along the drawer, I have a good solution: my variables are the (integer) counts of each slot type per drawer (>=0). With the pre-defined partition points and intervals, I can't seem to figure out what my variables should be since this adds an ordering constrains within each drawer. – Adi Shavit Jun 05 '20 at 09:52
  • @ErwinKalvelagen: I think [this blog post](http://yetanothermathprogrammingconsultant.blogspot.com/2016/03/tennis-scheduling.html) / [SO answer](https://stackoverflow.com/a/35771100/135862) of yours is close enough! – Adi Shavit Jun 08 '20 at 13:53
  • Great. I would have not made the connection from your description. – Erwin Kalvelagen Jun 09 '20 at 14:50

0 Answers0