The image is from a test app I wrote, which includes many algorithms and possibilities to vary parameters.
The basic algorithm, as you guessed, simply aims at the target position.
There are more advanced algorithms, which try to anticipate movements of the target. One of those estimate the time it takes ( at the current missile speed ) to reach the target, and adds to the target position its velocity multiplied by this time. For example, if it takes 4 seconds to reach the target, the missile will aim at (pos + vel * t) with pos = target position and vel = target velocity and t = 4s.
There’s an even more advanced algorithm which solves a quintic equation to better anticipate the target’s future position, but so far I’m unconvinced by that one ( it’s pretty cpu heavy and does not always seem to work better than simply using the target velocity ).
So the short answer is that: yes, I’m experimenting with various algorithms and parameters, that’s the whole point of writing a separate application for that.
At the moment the missiles roughly have the same thrust acceleration properties than an interceptor, around 5g. The goal is that it is possible to dodge them if you strafe at the right time when a missile is about to hit, however avoiding proximity detonation ( which does half damage atm ) is impossible, guaranteeing a minimum amount of damage, unless you use countermeasures to avoid any damage.