メインコンテンツへスキップ

Heuristic not used

回答済み

コメント

4件のコメント

  • 正式なコメント
    Simranjit Kaur
    • Gurobi Staff
    This post is more than three years old. Some information may not be up to date. For current information, please check the Gurobi Documentation or Knowledge Base. If you need more help, please create a new post in the community forum, or try Gurobot, our chatbot interface offering instant, expert-level support.
  • Jaromił Najman
    • Gurobi Staff

    However, I observed that in the first 48 hours no heuristic was used, and no feasible solution had been founded so far, which is very different compared to the solving process when I run the same model with smaller sampling data: I usually see the heuristic finds a feasible solution before it reaches the nodes.

    As long as you do not explicitly turn off all heuristics via Heuristics=0, Gurobi will run heuristics to find feasible solutions. As long as no solution is found, you will not see any heuristic reports. In your case, it looks like finding a feasible point is really challenging.

    which is very different compared to the solving process when I run the same model with smaller sampling data

    This makes a lot of sense, because finding feasible solution to a smaller model is often easier. Are you sure that a feasible point exists for the big data set? Is the data cleaned up, i.e., are rounding errors taken care off before plugging it into Gurobi?

    If you know a (almost) feasible solution, you could provide it to Gurobi as MIP start to possibly improve the solution finding process. You could also try to experiment with the NoRelHeurTime parameter to run a dedicated feasible point heuristic before the root node relaxation has been solved. We discuss the most important parameters for MIPs in the documentation.

    Best regards, 
    Jaromił

     

    0
  • Lin Lin
    • Gurobi-versary
    • Conversationalist
    • First Question

    Hi Jaromił,

     

    Thank you so much for the helpful answer! Yes, I believe the feasible points exist and I've seen feasible solutions have been found. I do have one more question related to this: there is a * before the first feasible solution. May I ask what that means? I've attached the log below. Thanks in advance!

       103   116 8325.45121   13 5956          - 7983.30773      - 159003 178183s
    121 127 8326.75272 15 4700 - 7983.30773 - 146105 194184s
    * 124 127 17 8328.2000000 7983.30773 4.14% 143175 194184s
    135 95 cutoff 17 8328.20000 7983.30773 4.14% 142763 194185s
    167 78 cutoff 10 8328.20000 7983.72953 4.14% 115409 202108s
    H 182 78 8319.9000000 7983.72953 4.04% 110957 202108s
    184 79 8217.56425 6 6735 8319.90000 7983.72953 4.04% 112299 210453s

    0
  • Jaromił Najman
    • Gurobi Staff

    The asterisk * means that a feasible solution has been found via branching and \(\texttt{H}\) means that a heuristic was able to find a feasible solution, cf. MIP logging documentation.

    Best regards, 
    Jaromił

    0

投稿コメントは受け付けていません。