Logic based AI Algorithms to solve MineSweeper
| Flag | Type | Description |
|---|---|---|
--dim |
int |
Dimension of the minesweeper board |
--agent |
none|basic|advanced|hyper_advanced|bonus_1|bonus_2 |
Which agent to use |
--bomb_count |
int |
Number of bombs to place randomly across the board |
--use_stepping |
bool |
Whether or not to use wait for input between agent solving steps. Great for debuging |
--quit_when_finished |
bool |
Whether you want pygames window to close when advanced agents are finished |
Refer to DEVELOPMENT for how to setup virtualenv
$ source minesweepervenv/bin/activate
$ python3 main.py --agent basic --dim 25 --bomb_count 20| Key | Function |
|---|---|
RETURN |
Open tile the agent is currently at |
f |
Place flag on tile the agent is currently at |
| Key | Function |
|---|---|
s |
Hold down to highlight bombs |
r |
Re-initialize board tiles |
n |
If --use_stepping flag is set, steps the agent forward one step |
$ git clone https://github.com/reaganmcf/MineSweeper
$ cd MineSweeper- If you don't have
venvinstalled, run the followingpython3 -m pip install --user virtualenv
$ python3 -m venv minesweepervenvsource minesweepervenv/bin/activate(minesweepervenv) $ pip install -r requirements.txt5. Update requirements.txt (Do this whenever you add a new library to the project so the change is reflected on github)
(minesweepervenv) $ pip freeze > requirements.txt