On May 18, 2012, at 3:28 PM, Riccardo Pellarin wrote:
> Daniel, this classification is still confusing. > In general, a sampler is a conformation generation scheme that follows a > probability distribution: uniform (as in the example given by Daniel), > Boltzmann (constant temperature MD or BD, as well as Monte Carlo with > set_return_best(False)) or posterior probability (such as the Gibbs > sampling in ISD). > > An optimizer instead only aims at lowest energies (Conjugated > Gradient, Steepest Descent... Monte Carlo with set_return_best(True)) Just to stir the pot a bit, isn't that just another distribution (that of the lowest energy state seen in k MC steps starting from X)? And a very nice one in that we have a simple and guaranteed way of sampling from it in an unbiased manner (unlike the Boltzman distribution on our scores where we never can be quite sure we are unbiased) :-)
> > On Fri, May 18, 2012 at 2:13 PM, Daniel Russel drussel@gmail.com wrote: >> An optimizer attempts to improve the current configuration of the Model by >> modifying optimized particle attributes so as to lower the score (there are >> some exceptions such as Brownian Dynamics when in equilibrium, but those >> are, I think, self-explanatory). The primary effect is to change particle >> attributes. >> >> A Sampler in contrast tries to produce a number of good configurations of >> the Model, often completely ignoring the Model's starting configuration (by >> randomizing particles, for example). It returns ConfigurationSet that allows >> you to load a configuration into the Model and then view it, save it or >> score it. The final state of the particles after using a Sampler is >> undefined. >> >> Each of Optimizer and Sampler can be given a ScoringFunction that will then >> be used when evaluating and optimizing. By default it is >> Model::create_scoring_function(), but one created with any other set of >> restraints (a ScoringFunction will be created on the fly from a list of >> restraints if you pass one instead). >> >> >> On Fri, May 18, 2012 at 1:22 PM, Dina Schneidman duhovka@gmail.com wrote: >>> >>> Hi, >>> >>> I am trying to figure out the difference between sampler and optimizer. >>> When each one should be used/developed? What is the relationship between >>> them? >>> How each one works with restraints and scoring functions? >>> >>> Dina >>> _______________________________________________ >>> IMP-dev mailing list >>> IMP-dev@salilab.org >>> https://salilab.org/mailman/listinfo/imp-dev >> >> >> >> _______________________________________________ >> IMP-dev mailing list >> IMP-dev@salilab.org >> https://salilab.org/mailman/listinfo/imp-dev >> > _______________________________________________ > IMP-dev mailing list > IMP-dev@salilab.org > https://salilab.org/mailman/listinfo/imp-dev