Skip to Content.
Sympa Menu

opal - Re: [Opal] MOGA optimizer gets stuck about half the time

opal AT lists.psi.ch

Subject: The OPAL Discussion Forum

List archive

Re: [Opal] MOGA optimizer gets stuck about half the time


Chronological Thread 
  • From: "Snuverink Jochem (PSI)" <jochem.snuverink AT psi.ch>
  • To: Finn O'Shea <finn.oshea AT nusano.com>
  • Cc: opal <opal AT lists.psi.ch>
  • Subject: Re: [Opal] MOGA optimizer gets stuck about half the time
  • Date: Fri, 19 Jun 2020 15:06:06 +0000
  • Accept-language: en-US, de-CH

Hi Finn,

On 16 Jun 2020, at 02:07, Finn O'Shea <finn.oshea AT nusano.com> wrote:

Hi All,

I'm trying to get the MOGA optimizer working and I've sort of been successful.  The first problem I encountered was that there are three references to the same FODO problem that are all slightly, but significantly, different.

Inside the opt-pilot wiki, there is a link to fodo.tgz that contains all three files, but there is also an example in the text of that wiki that is different in that does not use the .data file at all, nor does it use the .in and .tmpl convention of either the zipped file or the main wiki.

The opt-pilot wiki is more or less frozen and won't be updated anymore, still there for reference with more examples as you have noticed. The manual should in principle be the correct source of information, it contains a link to the opt-pilot wiki.

The example in section 21.4.7 of the "main" wiki, the wiki gives two files for the user to recreate the FODO example, but this won't work.  I think the user also needs the .data file that specifies the initial values of the QDX1_K1 (and the like) variables.

Thanks, and sorry, yes that is correct. The requirement of the not strictly necessary .data file will be removed in the next release. We will fix the older versions of the manual.

Second, I couldn't get visualize_pf.py to work.  The first bug I found is on line 384:
print("Show generation " + generation) 
that should read str(generation) otherwise a TypeError is raised.  Even after fixing that bug, there was at least one more.  I created my own viewer using Bokeh instead of running them down.

Thanks for reporting, I have opened a bug report that the script needs to be fixed.

Third, the optimizer will supplant data in existing json files without telling the user.  Is this the intended behavior?   If, for example, you do a run of 50 individuals for 10 generations and then do a run of 10 individuals for 5 generations the first 10 individuals in the first 5 generations will be the new data and all the other data will be the old data.  I was surprised by this. 

I couldn't reproduce this, but I understood from Andreas that might have been a Windows "feature"?

Finally, I modified the FODO example to be an even simpler FD and it hangs when running the MOGA optimizer on it about half the time.  No errors, no warnings, it just gets stuck.  I'm running Opal under Windows Subshell for Linux.  Maybe there is something specific about my example here, but without any errors or an obvious crash, it seems more like the optimization is getting bogged down.  All the assigned processors appear to be working the whole time.  I've attached the files for the optimizer, in case anyone has seen this before.  I've also attached the contents of opt.trace.0, pilot.trace.0, opt.progress.0 (if created) and the blurb at the end of a successful optimization run.  Maybe there is a verbose way to run the optimizer?

Output of the individual runs is suppressed and hanging has been seen before, though not lately as far as I know. I can reproduce the hanging on your example though, it seems to do with the communication between the cores, I'll have a look.

Thanks for the detailed analysis and comments,
Jochem

That got really long, sorry, and thanks for listening,
Finn

--
Senior Scientist
Nusano, Inc
28575 Livingston Ave
Valencia, CA 91355
Office: 1 (424) 293-3174
<mpi_opt_with_opal.pdf><fdopt.in><fdopt.tmpl><fdopt.data>




Archive powered by MHonArc 2.6.19.

Top of Page