Also, since the LiteRumble is a lot faster than the old rumble, is it still strongly requested that we use the subst: tag?
I will, but it's not trivial since I need to write parsing code for the LiteRumble pages to get the data. I also need to update VoidBot so we can have the RoboRumble archives and Twitter account. But I did forget about RumbleStats so thanks for mentioning it.
And yes we should still use the subst: tag - why not? Otherwise it needs to hit the rumble server for every page view.
I see why it would be a bad idea to use RumbleStats without the subst: tag on long version histories and the like, but it would be nice on bot pages so the RumbleStats would always be accurate and up-to-date.
The current RumbleStats requires a version, so it wouldn't quite be a drop-in that would keep the rating for the current version on a bot page without some changes to RumbleStats first. But I do love the idea of having such a thing. It could be a good task for a wiki bot instead of pinging the server on every page view. I've already got something monitoring changes in the rumble, so maybe at the same time it tweets, it could check for a wiki page with the bot name, and if it has a special tag, or any RumbleStats tag, replace it with the RumbleStats for the new version.
We'd have to make an initial pass first for existing bots. That could possibly also be aided by a wiki bot. Like for every bot in the rumble, check if it has a wiki page by the same name, with an info box and no RumbleStats tag. If all those things are true, put the RumbleStats somewhere in the info box. (Just trying to be conservative about screwing things up.)
I like this idea. How about parsing the participants list to see what the latest version is?
Oh yeah, you don't need to hit the rumble server directly for that initial pass, just let RumbleStats do it. But for keeping it up to date thereafter, I think we might as well let the @roborumble monitoring code also handle updates instead of doing a full rerun every time. I guess what that would miss is any existing bots that don't get new versions but later get bot pages.
I'll see if I can add a nice API for data retrieval later this evening, now that I've got the priority battles sorted out and the rumble stabilisation coming along nicely.
Ok, this is all good to go. Didn't include ANPP in the default template but it's there if you want it. (Skilgannon, np to remove it from here and rankings archiver if you remove it.)
I just re-implemented the BatchRankings using numpy (which uses C bindings for acceleration), and it also reduced my memory usage from a peak of ~900MB to ~270MB, so no worries any more about ANPP being removed =)
I also added a transform on my APS matrix so that (A)NPP and KNNPBI is perfectly consistent, even if the pairings are not synchronized.
I'm also considering doing a linear regression for the KNNPBI so that we get better interpolation of the expected PBI, particularly at the end points. I'm not sure if this defeats the whole KNNPBI concept though, by introducing 'expectations' based on the APS.