Skip to content

Charlie-Eastin/WordleSolver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

178 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Modified Wordle Solver

Charlie Eastin, Jeremy Hulse, Varun Iyer, Saketh Ruddarraju, Chris Worcester

Running the Application

IDE Specific Instructions:

  • Ensure that Java 17 is installed and configured properly.

  • For Eclipse Enterprise Edition and IntelliJ IDEA:

    Import as a maven project and run.

  • For VS Code:

    Open folder and run (assuming that Java 17 is configured properly).

There are 2 ways to run the application:

  1. GUI Mode (Default)

    • Launch the application using your preferred IDE.
    • Follow the prompts displayed in the GUI to interact with the Wordle solver.

    Note: The GUI may struggle to display all output when testing with solutons with more than 15 letters. If the GUI output window stalls, it will eventually load the output text. To see guesses as they are evaluated, consider switching to Console Mode:

  2. Console Mode

    • Open the Config.java file.
    • Set the value of USING_GUI to false.
    • Launch the application using your preferred IDE.
    • Follow the prompts displayed in the console to interact with the Wordle solver.

    Using console mode allows you to see the results in real time, especially when the GUI struggles to display all output.


Project Description

Originating as a single-player game, the New York Times Wordle challenges participants to discern a predetermined word composed of uppercase letters within a limited number of attempts. Each guess provides feedback, highlighting correctly positioned letters in green, misplaced ones in yellow, and absent ones in grey. This project extends the Wordle paradigm by introducing novel complexities and avenues for AI-driven solutions.

This project aims to enhance the classic Wordle puzzle game by implementing artificial intelligence-based algorithms for precise and efficient puzzle-solving. Our modified Wordle game allows users to select a randomized sequence of alphabetic letters as the target word, while an AI agent attempts to deduce this word with unlimited guesses. Notably, the AI has the flexibility to submit arbitrary sequences of alphabetic characters as guesses, regardless of their status as valid dictionary words.


Task Environment Description

  • Single Agent: This project operates within a singular agent framework, devoid of interactions with external entities.
  • Sequential: The agent's decision-making process unfolds iteratively, with prior experiences serving as foundational pillars for subsequent conjectures.
  • Discrete: The agent's decision-making landscape is discretized, constrained by finite choices dictating the selection of characters for each slot within the word.
  • Known: The governing principles and variables of the task environment are comprehensively understood by the agent, facilitating informed decision-making.

Key Modifications

  • Partial Observability: The task environment introduces dynamics whereby the agent may progressively lose visibility of certain letters within the target word.
  • Stochastic Mutation: In response to erroneous conjectures, there exists a probabilistic mechanism for letters within the guessed word to undergo mutation.
  • Unrestricted Guessing: The AI agent is unbound by conventional linguistic constraints, capable of proposing any conceivable sequence of alphabetic characters as potential solutions.
  • Dynamic Environment: The solution space is not static but rather subject to temporal fluctuations, necessitating a high degree of adaptability from the AI.

Objectives

  1. Develop and implement a refined genetic algorithm tailored to efficiently explore the solution space amidst dynamic environmental shifts.
  2. Incorporate partial observability and stochastic mutation mechanisms to fortify the AI agent's problem-solving capabilities.
  3. Undertake comparative evaluations with alternative methodologies such as hill climbing and simulated annealing.

Genetic Algorithm Approach

The decision to employ a modified genetic algorithm stems from its demonstrated efficacy in traversing expansive search spaces while exhibiting remarkable adaptability to fluctuating task environments. Recognized for its capacity to navigate uncertainty and prioritize salient information, the genetic algorithm emerges as a compelling choice for addressing the multifaceted challenges inherent in our modified Wordle game.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages