Integer.MAX_VALUE in the Scorer


In the Scorer for regret insertion, there is an Integer.MAX_VALUE which is used in the case when the second best insertion of the job is null. If I understand correctly, it mimics the unassigned cost in order to (temporally) prioritize the job when there is no second alternative.

However, if, in certain cases, the typical insertion cost is larger than Integer.MAX_VALUE, then the purpose of prioritizing the job will not be fulfilled. Thus, I think it should allow the user to be able to set that value when building the jsprit algo, e.g., we can add a property REGRET_SCORE_UNASSGN_COST to jsprit and allow setting the value via algoBuilder.setProperty(). In this way, if the user determines that Integer.MAX_VALUE is not a sufficiently large value, he/she can set a proper one.

What do you think?

Best regards,