1

I have a Genetic Algorithm and mixed-integer programming model of a parallel machine scheduling problem. But mathematical model takes too much time to solve the problem and unlikely genetic algorithm takes less time but doesn't show the optimal solution. So I am curious about if it is impossible to take solution from the Genetic Algorithms and to set them as a starting point into the math programming. Is it possible in fact?

Cœur
  • 37,241
  • 25
  • 195
  • 267
Ali Tor
  • 2,772
  • 2
  • 27
  • 58
  • @JohnHoerr this question is a _very_ poor fit for Programmers - it would be quickly voted down and closed over there, see [Why is “Is it possible to…” a poorly worded question?](http://meta.programmers.stackexchange.com/a/7274/31260) Recommended reading: **[What goes on Programmers.SE? A guide for Stack Overflow](http://meta.programmers.stackexchange.com/q/7182/31260)** – gnat May 24 '16 at 15:25
  • 1
    @gnat: "Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development." Maybe it's time to update the masthead? – John Hoerr May 24 '16 at 16:57
  • @JohnHoerr if all goes well, Programmers will not exist as we know it soon: http://meta.programmers.stackexchange.com/a/8054/ –  May 24 '16 at 18:48
  • I think the question has no unrelated point with the platform as the tags shown us. Basicly, the only important side of the question is about integer-programming. There is nothing to make change on Genetic Algorithym or to ask. So I need just to know whether a starting solution(s) can be added into the ILP model or not. – Ali Tor May 24 '16 at 21:38
  • 1
    Yes, seeding a MILP solver with an heuristic solution will usually help. Look further at the ideas of mixing MILP with other (meta)heuristics too - try searching for 'matheuristics' – TimChippingtonDerrick May 25 '16 at 13:23
  • Thanks @TimChippingDerrick. I definitely needed a keyword to search this topic on the internet. – Ali Tor May 25 '16 at 19:37

1 Answers1

1

With the assumption, that you use a classical Branch and Bound MIP-Solver, it will help the solver up to a certain amount, if u supply heuristic solutions (for example by the corresponding callback). Not only one, you can supply even more to the solution pool.

  1. The Problem is, that in most cases MIP-Solvers try to prove optimality. Even if the found the optimal solution, they run hours and days to prove, that they found the optimum. So maybe you can set a greater gap for the objective Value, which is accepted for optimality. Usually that helps a lot.
  2. Scheduling problems usually are highly symetrical and usually perform rather bad with straightforward formulatins. Try to find scientific literature for your scheduling problem. Maybe in some math forum on stack-exchange.
  3. If these problems are formulated straight forward, the LP-relaxation is often not super tight. In many cases, you will need some exra cuts, to perform at least acceptable. This has also implications to the duality gap.

So try to give for first big allowed gap for the objective value. Then try to pass several good (and different solutions) to the MIP-Solver for example by the corresponding heuristic callback. If it still not works acceptable, try to find some literature for your problem. But I think, the MathOverflow-Forum is more suited for those model topics (and propably, you will find there more skilled opinions for this topic than here).

Thorsten
  • 96
  • 3
  • This detailed explaining is a good start point for me. Now I will do some researches on this subject over this answer. Thanks @Thorsten. – Ali Tor May 25 '16 at 19:41