For the DIY crowd, implementing this on your own is a straightforward (and fun) exercise.<p>I used the Javascript Bayesian Bandit library found here:<p><a href="https://github.com/omphalos/bayesian-bandit.js/blob/master/bayesian-bandit.js" rel="nofollow">https://github.com/omphalos/bayesian-bandit.js/blob/master/b...</a><p>I then used it to create a job that runs every 5 minutes on parse.com that updates an 'order' field based on the 5 minute sample.<p>Then, from the client side, I simply do a query sorted by the 'order' field and I get the top variant for that 5 minute interval. Works like a charm!
Have seen a lot of these services, but this is definitely worth checking out. I think Multi-armed bandits are the way to go with optimisation, and just won Startup Asia's hackathon using this technique for a tinder-style app. A lot of people talk about learning from their customers, but few know how to really do it - understanding the math behind what's going on gives me much better confidence when deploying this type of service... Great work sharing it in this way.
As a splitforce user this is pretty cool.. biggest issue is having to wait for conclusive results, whatever speeds this up and auto prunes away the losing options is welcome.