Objective function stagnates (mcsqs)

Hi all,

I’m trying to generate some 54-atom SQS structures using mcsqs.
To speed things up, I submitted 4 separate mcsqs jobs, each with a different random seed (using the -ip=X option), following this guideline.

Unfortunately, none of the jobs managed to find a “perfect match”.
In all cases, the objective function drops quickly during the first hour but then completely stagnates — it doesn’t improve any further, even if I let the calculation continue (see plot below).

My questions are:

  • Is this behavior normal?
  • Should I expect the objective function to decrease further if I let the jobs run longer?
    (I’m guessing the code has entered some local minima where further swaps don’t improve the match much…)
  • Would running additional jobs with different seeds be more effective?

Any suggestions or advice from your experience would be much appreciated!

Thanks! :wink:

P.S.: For context, before running mcsqs I generated the input using:
corrdump -l=rndstr.in -ro -noe -nop -clus -2=1.5 -3=1.5
i.e., I included 3 neighbor shells in my BCC SQS.

Yes, it is possible that this behavior is completely normal. There may not be a better solution than the one found by the code during your existing runs.
Please note that the achieving “perfect match” is not necessary for the SQS to be good. It could be that you require the code to match so many correlations that it’s not possible. But the optimized SQS the code outputs is still the best found so far, for this cell size.
I would suggest looking at the values of the correlations themselves and see if all shorter-range correlations match perfectly up to some distance. If that is the case, then it is likely that this is the best that can be done with the SQS size requested.
You could also try a larger SQS and see if you get a significantly better match.
Sorry I can’t give a more definite answer: the search process is random and I can’t know in advance how many correlation can be fit with a given size.