Talk:Segmentation/Smoothing

From Robowiki
< Talk:Segmentation
Revision as of 08:46, 22 May 2009 by Robobot (talk | contribs) (Robobot 0.1 : correcting user page links)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Credits - Segmentation/Smoothing
Old wiki page: Segmentation/Smoothing
Original author(s): Jokester & Kawigi & Frakir

I personally support windowing, in which hits are registered to all GuessFactors that would have hit, no matter where the robot center is. For example, if the wave registers that the target's center was one unit away from the edge of the bin, it will count for both the bin the center is in and the bin next to it, for both bins would have hit. Logically this would have a greater effect at closer distances. Beyond this basic style, I dont see the point to other smoothing methods, so if someone could explain the benefits of further smoothing, I would love to get a better idea of the advantages of the subject. -- Jokester

I suspect another reason for smoothing beyond windowing is learning speed - chances are that if the enemy ended up in one place, they could just as likely have ended up in nearby spots in similar conditions, given more time, so those spots are also relevant. Say for instance, you had 2 hits in bin #20 and 2 hits in bin #22, then 3 hits in bin #15. Should you fire at #15 or maybe at #21? The discreteness of guess-factor targeting can be a weakness, particularly in the short term (although accurate recording is also important). Having a continuous window for each hit in a segment and being able to find the largest real intersection would be optimal over time, and trying to guess where the rest of the statistical distribution is that you haven't seen yet would be optimal in the short term. -- Kawigi

Actually, I remember on an old targeting page someone talked about how they kept a log of firing angles, and then randomly selected one of them. The idea behind this would be that you have the same probability of firing at an angle as the opponent has at moving at that angle, thus in the situation you provided, more than half the time it would fire at 20/22. The downside to this is that you lose the building probability of firing at a single bin. If its random you have the same probability of hitting every time, no matter what, but if you select the highest bin you will hit them every time they go to that bin, thus making your probabilities increase with time. So I feel that a mild smoothing/windowing would be advantageous. The reason I prefer windowing to general smoothing, is that if your bins encompas too much of an angle area, firing at 21 will miss both 20 and 22. -- Jokester

The disadvantage to just randomly picking a past angle is, of course, that your expected hit rate isn't the highest chance of hitting in any GF, but instead it's sum(p^2) for all probabilities at all angles. -- Kawigi

Any kind of smoothing, windowed or not, only makes sense if it improves your bots performance I think. I say experiment with it and see if it is any better with or without it. If it doesn't improve your bot or if it doesn't seem to matter, remove or redo it. By the way, smoothing is not only for Targeting as you seem to assume here. It's also applicable to WaveSurfing. Actually, there it is very important to do it. I find non-windowed to work best. -- PEZ