Team
David Bauer: concept and data
Anja Lemcke: illustrations
Simon Wimmer: UI design
Beni Buess: oracle model and backend
Webkid.io: frontend code
Basics
- 5 parameters per team
- reader weights the parameters
- oracle calculates every game
- readers result is stored and gets a URL
- dynamic lead text based on statistics
Demo
oracle model 1
// model after calculating points for every team
// points team a (20) points team b (40)
// |--------------------/----------+------------------------------|
// ^ 0 ^ threshold (20) ^ total team a + team b (60)
let spread = pointsTeamB - pointsTeamA
let underdogThresholdShift = spread / 2 / 5 * flags.underdogBonus
// for underdogBonus === 2 this will get us a new threshold of 24
//
// team a team b
// |------------------------/------+------------------------------|
// ^ threshold (24)
// shift if maxWeight - minWeight < 2
// shift more if parameters are weighted low (small totalPoints)
let maxPoints = 25
let weightThresholdShift = (spread / 2 / maxPoints) * (maxPoints - totalPoints);
// if in ko round, shift threshold against the underdog (more pressure on higher rated team)
// the shift is 2/10 of the initial spread (thus reversing an underdog bonus of 2)
oracle model 2
- Pick the number of goals in the game
- by number of goals distribution from world championship '14 and euro '12
- random value per goal, if below threshold, a scores, if above b scores
- If ko round, calculate one more goal if draw
team a team b
|------------------------/------+------------------------------|
^ threshold (24)
result storage
- result stored in CouchDB at Cloudant.
- rate limiting proxy in front of CouchDB
- statistics are calculated with CouchDB views
conclusions
- 10'000 plays within 24 hours by users coming only from social media
- english version helped with aggregating traffic and plays
- sport news show from Belgium featured it on facebook
- Gary Lineker retweeted
- poeple shared it a lot
- 80'000 plays by 10.6
- Financial Times and others used our model to implement their own
Questions?
Euro Orakel
By benib
Euro Orakel
- 1,059