I have a dummy question that I need to know its answer. I'm working on a project that requires AMPL and CPLEX as a solver. Now this problem normally takes more than 140 seconds to be solved. While I was searching, I came into an option called timelimit
. I used this option with value option cplex_options 'timelimit=5'
and the results were shown within 5 seconds. Now my questions is, does the output meet all the constraints and is within the boundaries I set in the code? Or did I just terminate the process and the results were the current "being processed" data? Thanks for helping.
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
If you don't set the timelimit parameter, the run time is the time to get to a provably optimal solution within the relative tolerance (default is 1e-6). By setting a time limit, you are telling cplex to stop at 5 seconds. In that case, it will return the best solution it has found, regardless of the quality of the objective function. cplex will not, however, give you a solution that violates constraints. If it can't find a feasible solution in the time allotted, then you will not get a solution. You can check the exitcode
suffix of the model to see if there was a solution found.