[Ipopt] Is ipopt deterministic?

Tony Kelman kelman at berkeley.edu
Thu Nov 13 18:45:45 EST 2014


The most common case of non-determinism is multithreaded BLAS/LAPACK libraries from MKL or OpenBLAS. Those are generally not exactly deterministic beyond machine precision unless you run them with a single thread. Some of the multithreaded sparse linear solvers like MA86 are also non-deterministic due to parallelism. If you really want to hunt this down, as I said in those linked threads from last year, set a high print level and output the logs to different files, to compare whether everything is truly starting at exactly the same point, and if so, where things start differing and by how much. With complicated non-convex problems, it’s entirely possible that initially very minor numerical roundoff differences can accumulate and eventually lead Ipopt down a different convergence path to a different solution.

-Tony


From: Ipopt User 
Sent: Thursday, November 13, 2014 5:35 AM
To: Guy Charles 
Cc: ipopt at list.coin-or.org 
Subject: Re: [Ipopt] Is ipopt deterministic?

IPOPT itself is fully deterministic, but some dependencies may not be deterministic. Please see http://list.coin-or.org/pipermail/ipopt/2013-April/003337.html and http://list.coin-or.org/pipermail/ipopt-tickets/2013-March/000635.html for possible explanations of the behavior you are seeing. 

On Thu, Nov 13, 2014 at 6:35 AM, Guy Charles <Guy.Charles at redbulltechnology.com> wrote:

  Hi,



  More out of curiosity really:  



  At times I’m getting some non-deterministic behaviour in my iterations and no of iterations before Ipopt finds an optimum.  Despite running the same script twice in a row with identical conditions, I may get different results.  I assume that the ‘error’ is in my function calls, scripts or layers of code between ipopt and the function calls, but I thought I should double check that Ipopt is completely deterministic.



  Should ipopt be completely deterministic from each isolated solve call?

  Is there any random jitter added in when it encounters an issue?  

  Would a badly scaled problem cause non-deterministic issues w.r.t numerical precision?  

  Is it possibly that anything in the linear solvers that could cause this?





  Thanks in advance for any help,



  Guy






  ______________________________________________________________________
  This email has been scanned by the Symantec Email Security.cloud service.
  For more information please visit http://www.symanteccloud.com
  ______________________________________________________________________


  _______________________________________________
  Ipopt mailing list
  Ipopt at list.coin-or.org
  http://list.coin-or.org/mailman/listinfo/ipopt





--------------------------------------------------------------------------------
_______________________________________________
Ipopt mailing list
Ipopt at list.coin-or.org
http://list.coin-or.org/mailman/listinfo/ipopt
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/ipopt/attachments/20141113/a44c7f39/attachment.html>


More information about the Ipopt mailing list