3 ms·
These guesses seem counterintuitive in that they waste letters by repeating previous guesses. Interesting if this is optimal though.
by thom 5y ago
These guesses seem counterintuitive in that they waste letters by repeating previous guesses. Interesting if this is optimal though.
- ghusbands 5y agoReducing the possible position of letters can drastically reduce the set of possible words; but intuition probably tends towards getting more information about the presence or lack rather than the position of letters. I don't think anyone has released an 'optimal' player, yet. I imagine getting all target words (in the wordle dictionary) in four guesses is doable and three is probably not.
- ChrisLomont 5y agoMy bot averages ~ 3.5 moves, does all in 5, and less than a few % uses 5. I've tried many, many approaches to get all in 4, and so far none work. It is very nearly optimal (many of the parts are provably optimal, the only thing not yet optimal is doing an entire tree search, which is likely computationally impossible due to required tree size), using quite a bit of computation, precomputation, caching, etc., for the searching. Oh, I also have a bot that solves Wordle in one move, every time. Hint: the source code for Wordle is viewable from the page, and is easy to use to predict the word for each day.... But I've said too much now :)
- ghusbands 5y ago(Warning: To anyone who might follow the hint, maybe heed my warning in another comment on this HN page.) Yeah, it might be bit cheeky to have a bot that guesses one word, and then gives you the correct answer and the date on which Wordle used or will use it. Is the tree size still too big if you're only using Wordle's word list? (I'm almost interested enough to code something up, but asking you might mean I don't get fully nerd-sniped.)
- ChrisLomont 5y ago>Is the tree size still too big if you're only using Wordle's word list? Yes, it's what I use. Wordle has ~2300 words as possible hidden words, ~12,000 more allowed as guesses. To get best scores you need to sample from all ~15k words. So, to build a tree: for each hidden word (2k), pick a guess word (15k), gain knowledge (729 possibilities, but only one per hidden/guess pair). This reduces your possible hidden list to 70-1kish. Repeat.. Worst tree is 5 levels deep, mine averages 3 levels deep, pruning and memoization is nearly nonexistant (I checked). You now have 30M first move outcome nodes, 2k of which are wins. After second move, you have a billion plus (I've sampled these to gain knowledge of what to expect). The next few rounds push the compute time into crazy realms of time (again, I've sampled to estimate sizes). I'd guess given a lot of computing power, it could be done, since around 3-4 levels most of the games complete. But since you cannot easily store this tree, I gave up for now. You should be able to store the tree with best move only at each node, which is good for gaming, but loses interest for statistical knowledge of the tree. Good luck :) Nerd sniping complete :)
- andopp 5y agoI think it's better to not repeat too much from previous guesses. I don't think my greedy algorithm is optimal, and also there are multiple ways to define "optimal". For instance, you might optimize average number of moves, or try to lower the upper bound for all possible words.
- andopp 5y agoOh I misunderstood the comment I was replying to. Sometimes it is better to repeat letters, because it's a balance between discovering letters and figuring out the order.