hi all,

i think we urgently need a solution for integrating different weights of terms into the scoring function to get real applications going.

Schedules in optimization

Old fashioned - but working - optimization strategies in modeling often use variable target functions. That means the scoring function is gradually changed in the course of optimization. In MODELLER, Andrej probably spent significant time of his thesis figuring out a reasonable way of varying the different terms of the scoring function to eventually obtain the best (=lowest scoring) results. Although the eventual relative weights of all terms is 1, finding the global minimum can be greatly facilitated by 'guiding' the optimization by removing high barriers that make the optimization stuck in early stages of the optimization.

In particular, it is beneficial to vary the term penalizing steric clashes S_vol (soft-sphere overlap) during optimization, ie have it practically zero in the beginning of the optimization to allow the particles to rearrange drastically and then gradually increase the weight for this term. In MODELLER a 'schedule' was used for this purpose. A schedule was a list of relative weights of the relative weights of the scoring terms.

IMP currently does not have any way of easily adjusting the different weights of the terms constituting the score. The only way of changing the restraints is to generate new ones, eg for volume exclusion one would need to regenerate these restraints each time specifying a different standard deviation every time, which is awkward in my eyes.

I would be eager to have some kind of schedule in IMP, ie an easy way to alter the relative contribution of terms to the score. Specifically, one could envision the following things useful during an optimization run for the volume exclusion restraint:

Technically, the weight could be either the same for a given kind of restraint, or possibly even a property of a restraint. In the latter case, specific atom pairs could be penalized less than others for clashes, which might make sense if the accuracy of the representation (eg a rigid body) is lower/higher for specific particles.

I do not favor any particular way of integrating a weight. One option - and currently a parameter in the EM score - is to call the restraint with a given weight. The term (and derivative) will be added to the overall functions using this weight.

Any ideas/suggestions/preferences?


frido

also found at:
https://salilab.org/internal/wiki/IMP/schedule



-- 
--
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Friedrich Foerster                                            %
% Andrej Sali Lab                                               %
% University of California at San Francisco                     %
# MC 2552                                                       %
% Byers Hall Room 501                                           %
% 1700 4th Street                                               %
% San Francisco, CA 94158-2330, USA                             %
%                                                               %
% phone:  +1 (415) 514-4258                                     %
% fax:    +1 (415) 514-4231                                     %
%                                                               %
%   www.salilab.org/~frido                                      %
%                                                               %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%