In numerical analysis, stochastic tunneling (STUN) is an approach to global optimization based on the Monte Carlo method-sampling of the function to be objective minimized in which the function is nonlinearly transformed to allow for easier tunneling among regions containing function minima. Easier tunneling allows for faster exploration of sample space and faster convergence to a good solution.

Idea

edit
 
Schematic one-dimensional test function (black) and STUN effective potential (red & blue), where the minimum indicated by the arrows is the best minimum found so far. All wells that lie above the best minimum found are suppressed. If the dynamical process can escape the well around the current minimum estimate it will not be trapped by other local minima that are higher. Wells with deeper minima are enhanced. The dynamical process is accelerated by that.

Monte Carlo method-based optimization techniques sample the objective function by randomly "hopping" from the current solution vector to another with a difference in the function value of  . The acceptance probability of such a trial jump is in most cases chosen to be   (Metropolis criterion) with an appropriate parameter  .

The general idea of STUN is to circumvent the slow dynamics of ill-shaped energy functions that one encounters for example in spin glasses by tunneling through such barriers.

This goal is achieved by Monte Carlo sampling of a transformed function that lacks this slow dynamics. In the "standard-form" the transformation reads   where   is the lowest function value found so far. This transformation preserves the loci of the minima.

  is then used in place of   in the original algorithm giving a new acceptance probability of  

The effect of such a transformation is shown in the graph.

Dynamically adaptive stochastic tunneling

edit

A variation on always tunneling is to do so only when trapped at a local minimum.   is then adjusted to tunnel out of the minimum and pursue a more globally optimum solution. Detrended fluctuation analysis is the recommended way of determining if trapped at a local minimum.

Other approaches

edit

References

edit