diffrax icon indicating copy to clipboard operation
diffrax copied to clipboard

Adaptive SDE Docs

Open lockwo opened this issue 1 year ago • 1 comments

In the docs under adaptation, it says "To perform adaptive stepping with SDEs requires commutative noise. Note that this commutativity condition is not checked."

Is this universally true? Can't you do improved Euler without commutative noise SDEs and still use adaptive methods? I thought this commutative requirement was just for Levy Area solvers

lockwo avatar Jul 31 '24 01:07 lockwo

Adaptive stepping of SDEs is pretty weird. The problem is that the adaptivity may accidentally introduce a bias in the Levy area.

Two sufficient conditions for good behaviour -- you just need one of them -- are (a) commutative noise or (b) that any rejected steps will still have their endpoint stepped to afterwards.

In practice we don't offer (b) at the moment -- although I've contemplated adding it -- so instead we simply just require that (a) be true.

I don't know if these conditions are necessary (I suspect not), but AFAIK the general case of what conditions you need here is essentially still open.

FWIW James is really the expert on this, I'd suggest pinging him an email.

patrick-kidger avatar Jul 31 '24 12:07 patrick-kidger