There are two versions of the file, and you may use either of them in an answer:
whale2.txt
(linked above) - in this version the text is not wrapped, so newlines appear only at the end of paragraphs. This file is recommended for new answers.
whale.txt
- in this version the text is wrapped to a width of 74 characters, so you have to predict the end of each line as well as predicting the text. This makes the challenge more fiddly and is included for mostly historical reasons.
Both files are the same size, 1215236 bytes.
For historical reasons, there are two versions of the file, and you may use either of them in an answer. In whale2.txt
(linked above) the text is not wrapped, so newlines appear only at the end of paragraphs. In the original whale.txt
the text is wrapped to a width of 74 characters, so you have to predict the end of each line as well as predicting the text. This makes the challenge more fiddly, so whale2.txt
is recommended for new answers. Both files are the same size, 1215236 bytes.
- Your submission itself. (The code, plus any data files it uses - these can be links if they're large.)
- An explanation of how your code works.An explanation of how your code works. Please explain the I/O method as well as how it predicts the next character. The explanation of your algorithm is important, and good explanations will earn bounties from me.
- The code you used to evaluate your score. (If this is identical to a previous answer you can just link to it.)
- Any code you used to generate your submission, along with an explanation of that code.along with an explanation of that code. This includes code that you used to optimise parameters, generate data files etc. (This doesn't count towards your byte count but should be included in your answer.)
The first one will be 50 points, to be50 points, was awarded to A. Rex for the best-scoring answer posted duringat the bounty periodtime.
The second will be 100 points, which I will award to the first answer that takes a different approach from the existing ones, according to my subjective judgement. (I'll create the bounty at the timewhen any of awarding it.) I'm particularly keen to see an approach based on neural networks, but I'll also award it to other techniques that are sufficiently different from the existing Markov model based approaches. Answers don't need to be amongfollowing occurs:
an answer is posted based on neural networks and gets a reasonable score. (It doesn't need to compete with the top answers, just do reasonably well.)
an answer is posted that takes a different method from the existing answers, in my subjective opinion. All the current top answers use variations on a Markov model (i.e. store substrings of length n and guess the most common next letter); I'm looking for an answer that does something significantly different from this. As above, this should score reasonably well but need not compete with the top answers.
an answer is posted that (a) uses a sophisticated method (in my subjective opinion), and (b) has a good explanation of that method, where "good explanation" means I could implement it myself without reading the code. This bounty could be awarded to an existing answer, if one is updated with a good explanation.
Once the top scoring to compete for this100 point bounty, but ideally they should beat the median score. It is possible forclaimed I will offer a 200 point one answer to win both bounties, updating the requirements accordingly.