-
Notifications
You must be signed in to change notification settings - Fork 0
/
README.txt
76 lines (51 loc) · 2.26 KB
/
README.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
Submitted on May 2nd, 2021
========================= Team Members =========================
> Andrea Covre
> Parisha Reddy
============================ Files =============================
> Project_Report.pdf
description: document that explains the design,
correctness, and runtime analysis of both
AIs, and compares their performance and
runtime against both grid area and bomb
density.
authors: Andrea Covre
Parisha Reddy
> AI_0.py
description: contains the class that defines our first
AI, it finds bombs based on risk score,
knowledge gain and minimized probing
overlap.
authors: Andrea Covre
> AI_1.py
description: contains the class that defines our second
AI, it is based on the naive single point
algorithm described in the "Algorithmic
Approaches to Playing Minesweeper" thesis by
David Becerra.
authors: Parisha Reddy
> minesweeper.py
description: game engine and controller where AIs and
Boards are instantiated and executed.
authors: Andrea Covre
> Board.py
description: class that takes in a JSON file, parses it,
stores all the related information about the
board that is being played, manages the
mining and counts the accesses.
authors: Andrea Covre
======================== Instructions ==========================
From the command line and inside the project directory run the
following:
python minesweeper.py <JSON test file>
where <JSON test file> represents the name (or relative path) of
a JSON file (within the project directory) that represents a
minesweeper board with the proper formatting.
Such command will make both AIs (AI-0 and AI-1) play one full
game from start to finish on the board specified. The board
information will be printed out along with the execution time,
number of board accesses, percentage mined and bombs locations
from both AIs.
Python version required: 3.9.1