Does this adaptive time-step algorithm have a name?

43 Views Asked by At

I'm using a somewhat unconventional technique to iteratively minimize a high-dimensional function $E(\vec\theta)$, and have proposed a simple routine to dynamically adapt its time-step. I am seeking to name/label this routine. If interested (though unrelated to my question) the technique is variational imaginary time evolution.

At each iteration, I compute

$\Delta \vec\theta = A^{-1} \nabla E(\vec\theta)$

and update the parameters

$\vec\theta \to \vec\theta + \Delta \vec\theta \Delta t$.

Note that $A$ is not some straight-forward encoding of information of the space of $E(\vec\theta)$.

Under this scheme, for sufficiently small $\Delta t$, $E$ monotonically decreases. Previously I fixed $\Delta t$ at some empirically-determined stable value, but I now wish to determine it adaptively. Note that for my purposes, computing $\nabla E(\vec\theta)$ is expensive but computing $E(\vec\theta)$ is cheap. Ergo I can cheaply assess whether a chosen $\Delta t$ is good or bad, by calculating $\Delta E = E(\vec\theta + \Delta \vec \theta \Delta t)- E(\vec\theta)$.

I now propose my scheme. Let $\Delta t$ be the time-step chosen in the previous iteration. Having computed $\Delta \vec\theta$ for this iteration, we seek to choose the new time-step. We will do so by repeatedly computing $\Delta E$ for new choices of $\Delta t$.

Repeat until $b$ is chosen:

  1. Compute the change in $E$ for three choices of timestep: $$ a = \Delta E|_{\frac{1}{2}\Delta t} \\ b = \Delta E|_{\Delta t} \\ c = \Delta E|_{2\Delta t}. $$

    We then choose a new time-step for this iteration:

    • If all three are positive (suggesting $\Delta t$ is not sufficiently small): set $\Delta t \to \frac{1}{4} \Delta t$.
    • Else pick the smallest (i.e. negative with max value) of $a$,$b$,$c$ and set $\Delta t \to $ the corresponding value.

My thinking is that this allows $\Delta t$ to change quite rapidly (exponentially) when navigating rapidly-changing $E$ landscapes; the stable domain of $\Delta t$ for the current local landscape can be quickly reached.

This is quite a simple and naive algorithm, so I expect it's a simple instance of some category of adaptive time-step algorithms. Does this algorithm have a name, or does it belong to some established class of time-adaptation techniques? I am looking for a name to correctly describe this type of time-adaptation in a paper.