<div><div dir="auto">Hi Omid -</div><div dir="auto"><br></div><div dir="auto">I often use Ipopt to solve problems at the same order of your large problem, although in my case the physics is solid mechanics solved with FEA. Even for linear physics, the runtime is dominated by the physics rather than the Ipopt functions. I haven’t checked lately, but my recollection is that 95+% of the runtime is spent evaluating f, g, df, and dg, rather than solving for an update (for which I use the HSL solvers). </div><div dir="auto"><br></div><div dir="auto">I would therefore start by trying to accelerate your response function evaluations. How do you evaluate their derivatives? An adjoint sensitivity analysis is almost certainly the best choice. Can you reduce the number of times you need to solve your physics by saving the solution fields for each update (rather than the naive approach of solving them each time you need to evaluate a response function)? <span style="color:rgb(0,0,0)">Can you parallelize your physics to reduce walltime? </span>How many constraint functions do you have? It might be possible to reformulate them to reduce the number, which would reduce time spent solving for an update as well as time spent evaluating constraint derivatives. </div><div dir="auto"><br></div><div dir="auto">- Seth </div><div><br><div class="gmail_quote"></div></div></div><div><div><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Dec 16, 2020 at 5:43 AM Omid Bidar <<a href="mailto:obidar1@sheffield.ac.uk" target="_blank">obidar1@sheffield.ac.uk</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)"><div dir="ltr"><div>Dear all, <br></div><div><br></div><div>I'm a new user of IPOPT, trying to solve an optimisation problem in a CFD context. The number of design variables in the problem is the same as the number of mesh cells, which are at least 10k but could be up to 500k for the problems we are working on. So the problem at hand is very nonlinear and highly dimensional. <br></div><div><br></div><div>A colleague has run the optimisation for a toy problem we're working on using SNOPT successfully, but it requires a user license. We're looking into using IPOPT as a free alternative. We've managed to use IPOPT with a small number of design variables with MUMPS as the linear solver, but the same setup for large design variables currently takes too long to compute (we've had to terminate the computation after running it overnight to solve the problem).</div><div><br></div><div>Having looked on the internet I know that people have implemented IPOPT for very large problems, but I haven't managed to really find any good resource on how to go about setting up the problem. Can someone please advise?</div><div><br></div><div>For brevity's sake I've not included a lot of details about the problem but can share more details should this be required.<br></div><div><br></div><div>Cheers,</div><div>Omid<br></div></div><br><br>_______________________________________________<br><br>Ipopt mailing list<br><br><a href="mailto:Ipopt@list.coin-or.org" target="_blank">Ipopt@list.coin-or.org</a><br><br><a href="https://list.coin-or.org/mailman/listinfo/ipopt" rel="noreferrer" target="_blank">https://list.coin-or.org/mailman/listinfo/ipopt</a><br><br></blockquote></div></div><br><br></div>