Skip to content

LaurentLessard/wordlesolver

Repository files navigation

This is a simple Wordle solver written in Julia. For an in-depth analysis and discussion of the findings, please see the accompanying blog post.

Description of files

Word lists

  • solutions.txt is the set of words that might appear as solutions to the puzzle. This list contains 2315 words.
  • nonsolutions.txt is the set of additional words that can be used as guesses but will never appear as solutions. Contains 10657 words.
  • solutions_nyt.txt is the updated list of solution words (the list changed after Wordle was acquired by the New York Times). The updated list contains 2309 words.
  • nonsolutions_nyt.txt is the updated list of additional words that can be used as guesses but will never appear as solutions. Contains 10638 words.

Scripts

  • utils.jl contains all the helper functions.
  • work.jl is a script that determines whether a given start word admits a strategy guaranteed to always win in 4 moves or fewer. Takes about 25 minutes to run for each word. This script was run in parallel on a multi-core machine to show that no 4-move strategy exists for Wordle.

Notebooks

  • wordle_solver.ipynb is an interactive solver. You can specify your guess words and the responses, and compute optimal next moves based on several different greedy heuristics.
  • performance.ipynb creates several figures (saved in the [figures] subfolder) that analyze the performance of different heuristics. Also generates the other figures used in the blog post.
  • hard_mode_exhaustive_search.ipynb performs an exhaustive search of all hard-mode strategies and finds one that is guaranteed to solve in 5 moves or fewer using only common words.

Strategies

  • hard_mode_strategy.md contains the full strategy found using the hard mode exhaustive search mentioned above, starting with the word SCAMP.

About

Solver for Wordle

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published