[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[IMP-users] slow MC optimizer



Hello,

I'm using the MC optimizer to optimize protein complexes represented by spheres. My script loops through various sets of restraints (either distance or MS-connectivity) and generates an ensemble of structures for each restraint set. My problem is that the speed of the optimizer changes drastically each time over the loop, and there is no correlation between the complexity of the restraint set and the speed of the optimizer. The speed usually varies between 10 and 30 models per second, but will sometimes slow to 1 model/10minutes forces me to terminate the script.

I always initialize each optmization cycle with new random coordinates, so I know I'm not simply getting stuck in a local minima, and I know the restraint sets themselves are all fine since I could loop over the same restraint set many times and the speed would change unpredictably. I've also tried setting up a completely new model instance for each restraint set, which doesn't solve the problem either.

for restraint set:

for oc in range(self.optimization_cycles):
ÂÂÂ ÂÂÂ ÂÂÂ for particle in self.system.ds: ## RANDOMIZE COORDINATES
ÂÂÂ ÂÂÂ ÂÂÂ ÂÂÂ init_coors = IMP.algebra.get_random_vector_in(self.system.bb)
ÂÂÂ ÂÂÂ ÂÂÂ ÂÂÂ particle.set_coordinates(init_coors)

ÂÂÂ ÂÂÂ ÂÂÂ T = self.initial_temperatureÂÂ
ÂÂÂ ÂÂÂ ÂÂÂ for mc in range(self.mc_cool_cycles):Â ## DO THE ANNEALING MC
ÂÂÂ ÂÂÂ ÂÂÂ ÂÂÂ T = 0.99*T
ÂÂÂ ÂÂÂ ÂÂÂ ÂÂÂ self.optimizer.set_kt(T)
ÂÂÂ ÂÂÂ ÂÂÂ ÂÂÂ self.optimizer.optimize(self.mc_cool_steps)

Any input is greatly appreciated.

Joe


--
Joseph D. Eschweiler
Ph.D. Candidate | Ruotolo Group
Department of Chemistry
University of Michigan