Constrained Molecular Dynamics as a Search and Optimization Tool Riccardo Poli Department of Computer Science University of Essex Christopher R. Stephens Instituto de Ciencias Nucleares UNAM
R. Poli - University of Essex February 19 R. Poli - University of Essex Introduction Search and optimization algorithms take inspiration from many areas of science: Evolutionary algorithms biological systems Simulated annealing physics of cooling Hopfield neural networks physics of spin glasses Swarm algorithms social interactions
Lots of other things in nature know how to optimise! February 19 R. Poli - University of Essex Lots of other things in nature know how to optimise!
Minimisation by Marbles February 19 R. Poli - University of Essex Minimisation by Marbles
Minimisation by Buckets of Water February 19 R. Poli - University of Essex Minimisation by Buckets of Water
Minimisation by Buckets of Water February 19 R. Poli - University of Essex Minimisation by Buckets of Water
Minimisation by Buckets of Water February 19 R. Poli - University of Essex Minimisation by Buckets of Water
Minimisation by Buckets of Water February 19 R. Poli - University of Essex Minimisation by Buckets of Water
Minimisation by Waterfalls February 19 R. Poli - University of Essex Minimisation by Waterfalls
Minimisation by Skiers February 19 R. Poli - University of Essex Minimisation by Skiers
Minimisation by Molecules February 19 R. Poli - University of Essex Minimisation by Molecules
Constrained Molecular Dynamics February 19 R. Poli - University of Essex Constrained Molecular Dynamics CMD is an optimisation algorithm inspired to multi-body physical interactions (molecular dynamics). A population of particles are constrained to slide on the fitness landscape The particles are under the effects of gravity, friction, centripetal acceleration, and coupling forces (springs).
Some math (because it looks good ) February 19 R. Poli - University of Essex Some math (because it looks good ) Kinetic energy of a particle
R. Poli - University of Essex February 19 R. Poli - University of Essex Some more math Equation of motion for a particle
Forces for Courses: No forces February 19 R. Poli - University of Essex Forces for Courses: No forces If v=0 then CMD=kind of random search
Forces for Courses: No forces February 19 R. Poli - University of Essex Forces for Courses: No forces If v0 then CMD=parallel search guided by curvature 1/6
Forces for Courses: No forces February 19 R. Poli - University of Essex Forces for Courses: No forces If v0 then CMD=parallel search guided by curvature 2/6
Forces for Courses: No forces February 19 R. Poli - University of Essex Forces for Courses: No forces If v0 then CMD=parallel search guided by curvature 3/6
Forces for Courses: No forces February 19 R. Poli - University of Essex Forces for Courses: No forces If v0 then CMD=parallel search guided by curvature 4/6
Forces for Courses: No forces February 19 R. Poli - University of Essex Forces for Courses: No forces If v0 then CMD=parallel search guided by curvature 5/6
Forces for Courses: No forces February 19 R. Poli - University of Essex Forces for Courses: No forces If v0 then CMD=parallel search guided by curvature. 6/6
Forces for Courses: Gravity February 19 R. Poli - University of Essex Forces for Courses: Gravity Minimum seeking behaviour If E small + friction hillclimbing behaviour 1/5
Forces for Courses: Gravity February 19 R. Poli - University of Essex Forces for Courses: Gravity Minimum seeking behaviour If E small + friction hillclimbing behaviour 2/5
Forces for Courses: Gravity February 19 R. Poli - University of Essex Forces for Courses: Gravity Minimum seeking behaviour If E small + friction hillclimbing behaviour 3/5
Forces for Courses: Gravity February 19 R. Poli - University of Essex Forces for Courses: Gravity Minimum seeking behaviour If E small + friction hillclimbing behaviour 4/5
Forces for Courses: Gravity February 19 R. Poli - University of Essex Forces for Courses: Gravity Minimum seeking behaviour If E small + friction hillclimbing behaviour. 5/5
Forces for Courses: Gravity February 19 R. Poli - University of Essex Forces for Courses: Gravity If E big skier-type, local-optima-avoiding behaviour 1/11
Forces for Courses: Gravity February 19 R. Poli - University of Essex Forces for Courses: Gravity If E big skier-type, local-optima-avoiding behaviour 2/11
Forces for Courses: Gravity February 19 R. Poli - University of Essex Forces for Courses: Gravity If E big skier-type, local-optima-avoiding behaviour 3/11
Forces for Courses: Gravity February 19 R. Poli - University of Essex Forces for Courses: Gravity If E big skier-type, local-optima-avoiding behaviour 4/11
Forces for Courses: Gravity February 19 R. Poli - University of Essex Forces for Courses: Gravity If E big skier-type, local-optima-avoiding behaviour 5/11
Forces for Courses: Gravity February 19 R. Poli - University of Essex Forces for Courses: Gravity If E big skier-type, local-optima-avoiding behaviour 6/11
Forces for Courses: Gravity February 19 R. Poli - University of Essex Forces for Courses: Gravity If E big skier-type, local-optima-avoiding behaviour 7/11
Forces for Courses: Gravity February 19 R. Poli - University of Essex Forces for Courses: Gravity If E big skier-type, local-optima-avoiding behaviour 8/11
Forces for Courses: Gravity February 19 R. Poli - University of Essex Forces for Courses: Gravity If E big skier-type, local-optima-avoiding behaviour 9/11
Forces for Courses: Gravity February 19 R. Poli - University of Essex Forces for Courses: Gravity If E big skier-type, local-optima-avoiding behaviour 10/11
Forces for Courses: Gravity February 19 R. Poli - University of Essex Forces for Courses: Gravity If E big skier-type, local-optima-avoiding behaviour. 11/11
Forces for Courses: Interactions February 19 R. Poli - University of Essex Forces for Courses: Interactions Particle-particle interactions (springs) Springs integrate information across the population of particles (a bit like crossover in a GA). Without friction oscillatory/exploratory search behaviour (similar to PSOs) With friction exploration focuses (like in a GA)
Forces for Courses: Interactions February 19 R. Poli - University of Essex Forces for Courses: Interactions 1/12
Forces for Courses: Interactions February 19 R. Poli - University of Essex Forces for Courses: Interactions 2/12
Forces for Courses: Interactions February 19 R. Poli - University of Essex Forces for Courses: Interactions 3/12
Forces for Courses: Interactions February 19 R. Poli - University of Essex Forces for Courses: Interactions 4/12
Forces for Courses: Interactions February 19 R. Poli - University of Essex Forces for Courses: Interactions 5/12
Forces for Courses: Interactions February 19 R. Poli - University of Essex Forces for Courses: Interactions 6/12
Forces for Courses: Interactions February 19 R. Poli - University of Essex Forces for Courses: Interactions 7/12
Forces for Courses: Interactions February 19 R. Poli - University of Essex Forces for Courses: Interactions 8/12
Forces for Courses: Interactions February 19 R. Poli - University of Essex Forces for Courses: Interactions 9/12
Forces for Courses: Interactions February 19 R. Poli - University of Essex Forces for Courses: Interactions 10/12
Forces for Courses: Interactions February 19 R. Poli - University of Essex Forces for Courses: Interactions 11/12
Forces for Courses: Interactions. February 19 R. Poli - University of Essex Forces for Courses: Interactions. 12/12
Forces for Courses: Friction February 19 R. Poli - University of Essex Forces for Courses: Friction Friction “relaxes” a particle into a good position once an interesting region has been found in the landscape. More friction less exploration Less friction more exploration Similar to temperature in simulated annealing. Similar to selection pressure in a GA
R. Poli - University of Essex February 19 R. Poli - University of Essex CMD in Practice We calculate the force acting on each particle and numerically integrate the motion equations for the system repeat for i =1 to Population Size ai = Force ( x, v, fitness surface ) vi = vi + ∆ ai xi = xi + ∆ vi next i end repeat
R. Poli - University of Essex February 19 R. Poli - University of Essex CMD is Similar to PSOs… Particle swarm optimisers are inspired to bird flocks foraging for i =1 to Population Size (N) for j = 1 to Dimension Size (d) aij = f1(pij – xij ) + f2(pgj – xij ) vij = vij + aij xij = xij + vij next j {if f(xi) < f(pi) then pi = xi // Intelligence if f(pi) < f(pg) then g = i} next i
R. Poli - University of Essex February 19 R. Poli - University of Essex …but… In CMD particles don’t fly, they slide No memory and no explicit “intelligence” No random forces Simulation is physically realistic
CMD is Similar to Gradient Descent February 19 R. Poli - University of Essex CMD is Similar to Gradient Descent But… CMD uses multiple interacting particles which can pull each other out of bad areas Particles have velocity and mass which help escape local optima Particles “feel” the local shape of the fitness surface (centripetal acceleration) in addition to the slope.
R. Poli - University of Essex February 19 R. Poli - University of Essex Experiments Setups n = 1, n = 2 and n = 10 particles N = 1, N = 2 and N = 3 dimensions Springs: no, ring, full Gravity: no, yes Friction: no, yes 30 independent runs per setup 5000 integration steps per run
R. Poli - University of Essex February 19 R. Poli - University of Essex Test problems De Jong’s F1 Unimodal Easy De Jong’s F2 Hard Rastrigin’s Highly multimodal Very hard
R. Poli - University of Essex February 19 R. Poli - University of Essex Results: F1 More particles better performance Gravity is sufficient to guarantee near perfect results Springs are not too beneficial Friction helps settle in the global optimum
R. Poli - University of Essex February 19 R. Poli - University of Essex Results: F2 Gravity is needed Springs are more beneficial Friction less beneficial (long narrow valley) Too few particles convergence not guaranteed (oscillations)
R. Poli - University of Essex February 19 R. Poli - University of Essex Results: Rastrigin Gravity is needed Springs help, especially when fully connected Friction helps settle in the global optimum More particles are necessary to solve problem reliably
R. Poli - University of Essex February 19 R. Poli - University of Essex VRML Demos
Conic fitness function, one particle, gravity, no friction February 19 R. Poli - University of Essex Conic fitness function, one particle, gravity, no friction
Conic fitness function, 5 particles, gravity, springs (ring), friction February 19 R. Poli - University of Essex Conic fitness function, 5 particles, gravity, springs (ring), friction
Quadratic fitness function, 5 particles, gravity, friction February 19 R. Poli - University of Essex Quadratic fitness function, 5 particles, gravity, friction
R. Poli - University of Essex February 19 R. Poli - University of Essex Quadratic fitness function, 5 particles, gravity, no friction, springs (ring)
R. Poli - University of Essex February 19 R. Poli - University of Essex Quadratic fitness function, 5 particles, gravity, friction, springs (ring)
Multimodal fitness function, 5 particles, gravity, friction February 19 R. Poli - University of Essex Multimodal fitness function, 5 particles, gravity, friction
Multimodal function, 5 particles, gravity, friction, springs (ring) February 19 R. Poli - University of Essex Multimodal function, 5 particles, gravity, friction, springs (ring)
R. Poli - University of Essex February 19 R. Poli - University of Essex Multimodal function, 5 particles, gravity, friction, springs (all connected)
Rastrigin fitness function, 20 particles, gravity, friction February 19 R. Poli - University of Essex Rastrigin fitness function, 20 particles, gravity, friction
R. Poli - University of Essex February 19 R. Poli - University of Essex Rastrigin function, 20 particles, gravity, friction, springs (all connected)
R. Poli - University of Essex February 19 R. Poli - University of Essex Conclusions CMD uses the physics of masses and forces to guide the exploration of fitness landscapes. For now we have explored three forces: Gravity provides the ability to seek minima. Interaction via springs provides exploration. Friction slows down and focuses the search. The results are encouraging and we hope much more can come from CMD.