This project implements a solver for the classic sliding N-Puzzle game using three fundamental search algorithms: Breadth-First Search (BFS), Depth-First Search (DFS), and A* search. The solver can handle puzzles of various sizes and provides detailed performance metrics for each algorithm.
The program follows clean OOP
design principles with clear separation of concerns:
The solver tracks comprehensive performance data for analysis and comparison:
Implemented three core search algorithms:
Efficient data structures drove performance:
This project implements an intelligent Sudoku solver using Constraint Satisfaction Problem (CSP) techniques. The solver employs backtracking search enhanced with sophisticated heuristics and constraint propagation to efficiently solve Sudoku puzzles of varying difficulty levels.
Built a complete CSP framework specifically designed for Sudoku:
Implemented multiple heuristics to guide the search process intelligently:
Forward checking dramatically reduces the search space:
Comprehensive testing and analysis across diverse puzzle difficulties:
Key architectural choices that optimize performance:
This project implements an intelligent agent that plays the 2048 puzzle game using adversarial search techniques. The AI consistently achieves tiles of 2048 and beyond by combining expectiminimax algorithm with alpha-beta pruning and sophisticated heuristic evaluation functions.
Implemented expectiminimax search to handle the stochastic nature of 2048's tile placement:
Enhanced search efficiency through intelligent branch elimination:
Developed weighted combination of strategic heuristics:
Performance enhancements enabled deeper search:
Implemented Bayesian optimization to discover optimal heuristic weights:
The agent demonstrates strong and consistent gameplay: