]> git.sesse.net Git - foosball/blob - www/index.xml
Added an assessment function.
[foosball] / www / index.xml
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!DOCTYPE
3   html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
4   "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
5 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" xmlns:t="http://template.sesse.net/">
6   <head>
7     <title>Foosball!</title>
8     <link rev="made" href="mailto:sgunderson@bigfoot.com" />
9     <meta name="MSSmartTagsPreventParsing" content="TRUE" />
10   </head>
11   <body>
12     <h1>Foosball!</h1>
13     
14     <h2>Add a singles result</h2>
15
16     <form method="post" action="add-single-result.pl">
17       <table>
18         <tr>
19           <th>User name 1</th>
20           <td><input name="username1" value="" size="10" /></td>
21         </tr>
22         <tr>
23           <th>User name 2</th>
24           <td><input name="username2" value="" size="10" /></td>
25         </tr>
26         <tr>
27           <th>Score</th>
28           <td>
29             <input name="score1" value="" size="2" /> -
30             <input name="score2" value="" size="2" />
31           </td>
32         </tr>
33         <tr>
34           <td colspan="2"><input type="submit" /></td>
35         </tr>
36       </table>
37     </form>
38     
39     <h2>Add a doubles result</h2>
40
41     <form method="post" action="add-double-result.pl">
42       <table>
43         <tr>
44           <th>Team 1 (usernames)</th>
45           <td>
46             <input name="team1_username1" value="" size="10" /> and 
47             <input name="team1_username2" value="" size="10" />
48           </td>
49         </tr>
50         <tr>
51           <th>Team 2 (usernames)</th>
52           <td>
53             <input name="team2_username1" value="" size="10" /> and 
54             <input name="team2_username2" value="" size="10" />
55           </td>
56         </tr>
57         <tr>
58           <th>Score</th>
59           <td>
60             <input name="score1" value="" size="2" /> -
61             <input name="score2" value="" size="2" />
62           </td>
63         </tr>
64         <tr>
65           <td colspan="2"><input type="submit" /></td>
66         </tr>
67       </table>
68     </form>
69
70     <h2>Singles score board</h2>
71
72     <table>
73       <thead>
74         <tr>
75           <th>Username</th>
76           <th>Rating mean</th>
77           <th>Rating deviation</th>
78           <th>Conservative estimate</th>
79           <th>Change since yesterday</th>
80         </tr>
81       </thead>
82       <tbody t:id="singletop">
83         <tr>
84           <td><t:username /></td>
85           <td><t:rating /></td>
86           <td><t:rd /></td>
87           <td><t:lowerbound /></td>
88           <td><t:trend /></td>
89         </tr>
90       </tbody>
91     </table>
92
93     <h2>Doubles score board</h2>
94
95     <table>
96       <thead>
97         <tr>
98           <th>Username</th>
99           <th>Rating mean</th>
100           <th>Rating deviation</th>
101           <th>Conservative estimate</th>
102           <th>Change since yesterday</th>
103         </tr>
104       </thead>
105       <tbody t:id="doubletop">
106         <tr>
107           <td><t:username /></td>
108           <td><t:rating /></td>
109           <td><t:rd /></td>
110           <td><t:lowerbound /></td>
111           <td><t:trend /></td>
112         </tr>
113       </tbody>
114     </table>
115
116     <h2>Last ten games</h2>
117
118     <table>
119       <thead>
120         <tr>
121           <th>Registered</th>
122           <th>Type</th>
123           <th colspan="2">Opponents</th>
124           <th>Score</th>
125         </tr>
126       </thead>
127       <tbody t:id="lastgames">
128         <tr>
129           <td><t:gametime /></td>
130           <td><t:type /></td>
131           <td><t:username1 /></td>
132           <td><t:username2 /></td>
133           <td><t:score1 /> &#8211; <t:score2 /></td>
134         </tr>
135       </tbody>
136     </table>
137     
138     <h2>Assess a singles match</h2>
139
140     <form method="post" action="assess-single.pl">
141       <table>
142         <tr>
143           <th>User name 1</th>
144           <td><input name="username1" value="" size="10" /></td>
145         </tr>
146         <tr>
147           <th>User name 2</th>
148           <td><input name="username2" value="" size="10" /></td>
149         </tr>
150         <tr>
151           <td colspan="2"><input type="submit" /></td>
152         </tr>
153       </table>
154     </form>
155     
156
157     <h2>About the ratings</h2>
158
159     <p>The rating system in use is called <em>FoosRank</em>, and is specially 
160       designed for this system. It is a Bayesian rating system, inspired by
161       Glicko 1 but re-worked out from scratch with a statistically sound model
162       of non-binary results, and adjusted for teams (with some ideas from
163       Microsoft's TrueSkill system). For those not familiar with Bayesian
164       ratings, the most important parts are:</p>
165
166     <ul>
167       <li>Your rating is a <em>statistical estimation</em> of your true skill.
168         It has a mean (the point estimate of your skill) and a deviation
169         (measuring the uncertainity of the estimate), called the RD. It is approximately
170         Gaussian (actually logistic).</li>
171       <li>When you win or lose a game, your rating will change accordingly,
172         based on your score and your opponent. <em>You do not get 'points'
173         for winning or losing, the estimate is merely getting more accurate.</em>
174         In the process, the RD gets lower as you play. However, the RD increases
175         with time, opening up for the fact that your true skill can change.
176         (Glicko 2 also supports a volatility measure, which better models change
177         in true skill, but it has not been implemented here.)</li>
178       <li>The score board is sorted by a conservative estimate of your rating
179         (mean - 3 * RD). This makes it non-attractive for people with artifically
180         high ratings (especially newcomers) to avoid playing to stay high up in
181         the score board.</li>
182       <li>The single and double rankings are separate. Even though you play as a
183         team and all four players' rankings and RDs influence the rating adjustment,
184         you are ranked as an individual, as we do not usually play with fixed
185         teams.</li>
186     </ul>
187   </body>
188 </html> 
189