4
$\begingroup$

The task of the robot is as follows. My robot should catch another robot in the arena, which is trying to escape. The exact position of that robot is sent to my robot at 5Hz. Other than that I can use sonsor to identify that robot. Is that possible to estimate the next position of other robot using a mathematical model. If so, can anyone recommend tutorials or books to refer..?

$\endgroup$
  • $\begingroup$ Kalman filter is your choice since it exploits the motion model of the target. See Tracking and Data Association book $\endgroup$ – CroCo Jul 29 '15 at 23:25
6
$\begingroup$

Assuming a constant update of 5Hz, your sample time is (1/5) = 0.2s.

Get one position of the target, p1. Get a second position of the target, p2.

Target speed is the difference in position divided by difference in time: $$ v = (p_2 - p_1)/dT \\ v = (p_2 - p_1)/0.2 $$

Now predict where they will be in the future, where future is $x$ seconds from now:

$$ p_{\mbox{future}} = p_2 + v*x $$ where again, $p_2$ is the current point of the target, $v$ is the target's calculated speed, and $x$ is how far in the future you want to predict, in seconds.

You can do a number of things from here such as filtering a number of samples in the past, you could try curve fitting, etc., but this is a simple method of predicting future location based on known position updates.

If you knew more about the path or potential paths your target could take you could optimize the prediction or provide a series of cases, but assuming relatively linear motion this model should hold.

| improve this answer | |
$\endgroup$
  • $\begingroup$ Kalman filter is more efficient for this kind of projects. I'm surprised you mentioned nothing about it. $\endgroup$ – CroCo Jul 29 '15 at 23:27
  • 3
    $\begingroup$ No, a Kalman filter is useful for filtering a noisy signal. OP stated the target reports its "exact location" at 5Hz. No noise, no need for a Kalman filter. $\endgroup$ – Chuck Jul 30 '15 at 1:49
  • $\begingroup$ Assuming that it's speed is not truly constant and that it is attempting to evade, it would make sense that the variance of the vehicle's speed could be interpretted as noise, and so a Kalman filter could actually have a beneficial effect in this case. $\endgroup$ – Octopus Jul 31 '15 at 18:09
  • $\begingroup$ This would also require advance knowledge of the evasion/heading variance, in which instance you would probably be better off with curve fitting because the heading changes are unlikely to be well modeled by the white noise assumption required for the Kalman filter (slides 3 & 4). You could also try a particle filter, but again, the course the fleeing target is likely to take would be zig-zag, circle, etc.- maybe changing direction at random times, but otherwise a straight or circular and not noisy path. $\endgroup$ – Chuck Jul 31 '15 at 18:32
  • 1
    $\begingroup$ @Ramesh-X Awesome! Always feels good to win. I hope I helped a little! $\endgroup$ – Chuck Nov 28 '15 at 0:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.