Skip to content

Implement DFS, BFS, and A* algorithms to navigate an agent through various search problems (collecting gems, finding exits, or visiting specific points)

License

Notifications You must be signed in to change notification settings

Ant0in/Projet1-IA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Search Problem - 2024

Description

This project involves implementing the DFS, BFS, and A* search algorithms to navigate an agent through a map, where it must solve a problem (such as collecting gems, finding an exit, or visiting specific points). More info in ./pdf/consignes.pdf.

search problem
Instance of the Search Problem, where agent must collect gems and find the exit.

Features

  • Algorithmic graph search approach: Transforms the problem into a graph, with nodes representing "world states", and navigates through them using A*, BFS, and DFS.
  • Search problems: Implements various problems, including one where finding every gem is required to exit, another where the goal is simply to find the exit, and one where you must visit every corner before exiting.
  • Visualization: A visual demonstration of the search algorithms, where the agent moves according to the solution found by the algorithm.

Usage

Make sure you have Python >= 3.12 installed.

Running the Project

  1. Clone the repository:

    git clone https://github.com/Ant0in/Projet1-IA.git
  2. Navigate to the project directory:

    cd Projet1-IA/
  3. Install dependencies:

    pip install -r "requirements.txt"
  4. Run the project on a grid map1.txt:

    python "./main.py" "./tests/map1.txt" --problem "gem" --algo "bfs" --verbose

Running Tests

To run the tests using Pytest (verbose):

pytest .\tests\ -vvv

License

This project is licensed under the MIT License. You are free to use, modify, and distribute this software.

Acknowledgements

This project was developed for the Artificial Intelligence course INFO-F311. Special thanks to Tom Lenaerts & Yannick Molinghen (ULB) for their guidance and support.

About

Implement DFS, BFS, and A* algorithms to navigate an agent through various search problems (collecting gems, finding exits, or visiting specific points)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages