getting right starter files
This commit is contained in:
@@ -0,0 +1,3 @@
|
||||
# This is the solution file for test_cases/q4/0-eval-function-lose-states-1.test.
|
||||
action: "Left"
|
||||
generated: "lose1 lose2 root"
|
||||
@@ -0,0 +1,30 @@
|
||||
class: "GraphGameTreeTest"
|
||||
alg: "ExpectimaxAgent"
|
||||
depth: "2"
|
||||
|
||||
diagram: """
|
||||
root
|
||||
/ \
|
||||
lose1 lose2
|
||||
1 0
|
||||
|
||||
If your algorithm is returning a different
|
||||
action, make sure you are calling the
|
||||
evaluation function on losing states.
|
||||
"""
|
||||
num_agents: "2"
|
||||
|
||||
start_state: "root"
|
||||
win_states: ""
|
||||
lose_states: "lose1 lose2"
|
||||
|
||||
successors: """
|
||||
root Left lose1
|
||||
root Right lose2
|
||||
"""
|
||||
|
||||
evaluation: """
|
||||
lose1 1.0
|
||||
lose2 0.0
|
||||
"""
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
# This is the solution file for test_cases/q4/0-eval-function-lose-states-2.test.
|
||||
action: "Right"
|
||||
generated: "lose1 lose2 root"
|
||||
@@ -0,0 +1,30 @@
|
||||
class: "GraphGameTreeTest"
|
||||
alg: "ExpectimaxAgent"
|
||||
depth: "2"
|
||||
|
||||
diagram: """
|
||||
root
|
||||
/ \
|
||||
lose1 lose2
|
||||
0 1
|
||||
|
||||
If your algorithm is returning a different
|
||||
action, make sure you are calling the
|
||||
evaluation function on losing states.
|
||||
"""
|
||||
num_agents: "2"
|
||||
|
||||
start_state: "root"
|
||||
win_states: ""
|
||||
lose_states: "lose1 lose2"
|
||||
|
||||
successors: """
|
||||
root Left lose1
|
||||
root Right lose2
|
||||
"""
|
||||
|
||||
evaluation: """
|
||||
lose1 0.0
|
||||
lose2 1.0
|
||||
"""
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
# This is the solution file for test_cases/q4/0-eval-function-win-states-1.test.
|
||||
action: "Left"
|
||||
generated: "root win1 win2"
|
||||
@@ -0,0 +1,30 @@
|
||||
class: "GraphGameTreeTest"
|
||||
alg: "ExpectimaxAgent"
|
||||
depth: "2"
|
||||
|
||||
diagram: """
|
||||
root
|
||||
/ \
|
||||
win1 win2
|
||||
1 0
|
||||
|
||||
If your algorithm is returning a different
|
||||
action, make sure you are calling the
|
||||
evaluation function on winning states.
|
||||
"""
|
||||
num_agents: "2"
|
||||
|
||||
start_state: "root"
|
||||
win_states: "win1 win2"
|
||||
lose_states: ""
|
||||
|
||||
successors: """
|
||||
root Left win1
|
||||
root Right win2
|
||||
"""
|
||||
|
||||
evaluation: """
|
||||
win1 1.0
|
||||
win2 0.0
|
||||
"""
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
# This is the solution file for test_cases/q4/0-eval-function-win-states-2.test.
|
||||
action: "Right"
|
||||
generated: "root win1 win2"
|
||||
@@ -0,0 +1,30 @@
|
||||
class: "GraphGameTreeTest"
|
||||
alg: "ExpectimaxAgent"
|
||||
depth: "2"
|
||||
|
||||
diagram: """
|
||||
root
|
||||
/ \
|
||||
win1 win2
|
||||
0 1
|
||||
|
||||
If your algorithm is returning a different
|
||||
action, make sure you are calling the
|
||||
evaluation function on winning states.
|
||||
"""
|
||||
num_agents: "2"
|
||||
|
||||
start_state: "root"
|
||||
win_states: "win1 win2"
|
||||
lose_states: ""
|
||||
|
||||
successors: """
|
||||
root Left win1
|
||||
root Right win2
|
||||
"""
|
||||
|
||||
evaluation: """
|
||||
win1 0.0
|
||||
win2 1.0
|
||||
"""
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
# This is the solution file for test_cases/q4/0-expectimax1.test.
|
||||
action: "Left"
|
||||
generated: "A B C D E F G H I exp1 exp2 exp3 max"
|
||||
@@ -0,0 +1,48 @@
|
||||
class: "GraphGameTreeTest"
|
||||
alg: "ExpectimaxAgent"
|
||||
depth: "2"
|
||||
|
||||
# Tree adapted from lecture 6 slides
|
||||
diagram: """
|
||||
max
|
||||
/-/ | \--\
|
||||
/ | \
|
||||
/ | \
|
||||
exp1 exp2 exp3
|
||||
/|\ /|\ /|\
|
||||
/ | \ / | \ / | \
|
||||
A B C D E F G H I
|
||||
3 12 8 2 4 6 14 5 2
|
||||
"""
|
||||
num_agents: "2"
|
||||
|
||||
start_state: "max"
|
||||
win_states: "A B C D E F G H I"
|
||||
lose_states: ""
|
||||
|
||||
successors: """
|
||||
max Left exp1
|
||||
max Center exp2
|
||||
max Right exp3
|
||||
exp1 Left A
|
||||
exp1 Center B
|
||||
exp1 Right C
|
||||
exp2 Left D
|
||||
exp2 Center E
|
||||
exp2 Right F
|
||||
exp3 Left G
|
||||
exp3 Center H
|
||||
exp3 Right I
|
||||
"""
|
||||
|
||||
evaluation: """
|
||||
A 3.0
|
||||
B 12.0
|
||||
C 8.0
|
||||
D 2.0
|
||||
E 4.0
|
||||
F 6.0
|
||||
G 14.0
|
||||
H 5.0
|
||||
I 2.0
|
||||
"""
|
||||
@@ -0,0 +1,3 @@
|
||||
# This is the solution file for test_cases/q4/1-expectimax2.test.
|
||||
action: "Left"
|
||||
generated: "A B C D E F G H I exp1 exp2 exp3 max"
|
||||
@@ -0,0 +1,48 @@
|
||||
class: "GraphGameTreeTest"
|
||||
alg: "ExpectimaxAgent"
|
||||
depth: "2"
|
||||
|
||||
# Tree from lecture 7 slides
|
||||
diagram: """
|
||||
max
|
||||
/-/ | \--\
|
||||
/ | \
|
||||
/ | \
|
||||
exp1 exp2 exp3
|
||||
/|\ /|\ /|\
|
||||
/ | \ / | \ / | \
|
||||
A B C D E F G H I
|
||||
3 12 9 2 4 6 15 6 0
|
||||
"""
|
||||
num_agents: "2"
|
||||
|
||||
start_state: "max"
|
||||
win_states: "A B C D E F G H I"
|
||||
lose_states: ""
|
||||
|
||||
successors: """
|
||||
max Left exp1
|
||||
max Center exp2
|
||||
max Right exp3
|
||||
exp1 Left A
|
||||
exp1 Center B
|
||||
exp1 Right C
|
||||
exp2 Left D
|
||||
exp2 Center E
|
||||
exp2 Right F
|
||||
exp3 Left G
|
||||
exp3 Center H
|
||||
exp3 Right I
|
||||
"""
|
||||
|
||||
evaluation: """
|
||||
A 3.0
|
||||
B 12.0
|
||||
C 9.0
|
||||
D 2.0
|
||||
E 4.0
|
||||
F 6.0
|
||||
G 15.0
|
||||
H 6.0
|
||||
I 0.0
|
||||
"""
|
||||
@@ -0,0 +1,3 @@
|
||||
# This is the solution file for test_cases/q4/2-one-ghost-3level.test.
|
||||
action: "Left"
|
||||
generated: "a b1 b2 c1 c2 c3 c4 d1 d2 d3 d4 d5 d6 d7 d8"
|
||||
@@ -0,0 +1,52 @@
|
||||
class: "GraphGameTreeTest"
|
||||
alg: "ExpectimaxAgent"
|
||||
depth: "3"
|
||||
|
||||
diagram: """
|
||||
/-----a------\
|
||||
/ \
|
||||
/ \
|
||||
b1 b2
|
||||
/ \ / \
|
||||
c1 c2 c3 c4
|
||||
/ \ / \ / \ / \
|
||||
d1 d2 d3 d4 d5 d6 d7 d8
|
||||
3 9 10 6 4 7 0 5
|
||||
|
||||
a - max
|
||||
b - exp
|
||||
c - max
|
||||
"""
|
||||
num_agents: "2"
|
||||
|
||||
start_state: "a"
|
||||
win_states: "d1 d2 d3 d4 d5 d6 d7 d8"
|
||||
lose_states: ""
|
||||
|
||||
successors: """
|
||||
a Left b1
|
||||
a Right b2
|
||||
b1 Left c1
|
||||
b1 Right c2
|
||||
b2 Left c3
|
||||
b2 Right c4
|
||||
c1 Left d1
|
||||
c1 Right d2
|
||||
c2 Left d3
|
||||
c2 Right d4
|
||||
c3 Left d5
|
||||
c3 Right d6
|
||||
c4 Left d7
|
||||
c4 Right d8
|
||||
"""
|
||||
|
||||
evaluation: """
|
||||
d1 3.0
|
||||
d2 9.0
|
||||
d3 10.0
|
||||
d4 6.0
|
||||
d5 4.0
|
||||
d6 7.0
|
||||
d7 0.0
|
||||
d8 5.0
|
||||
"""
|
||||
@@ -0,0 +1,3 @@
|
||||
# This is the solution file for test_cases/q4/3-one-ghost-4level.test.
|
||||
action: "Right"
|
||||
generated: "A B C D E F G H I J K L M N O P a b1 b2 c1 c2 c3 c4 d1 d2 d3 d4 d5 d6 d7 d8"
|
||||
@@ -0,0 +1,79 @@
|
||||
class: "GraphGameTreeTest"
|
||||
alg: "ExpectimaxAgent"
|
||||
depth: "4"
|
||||
|
||||
diagram: """
|
||||
/-----a------\
|
||||
/ \
|
||||
/ \
|
||||
b1 b2
|
||||
/ \ / \
|
||||
c1 c2 c3 c4
|
||||
/ \ / \ / \ / \
|
||||
d1 d2 d3 d4 d5 d6 d7 d8
|
||||
/ \ / \ / \ / \ / \ / \ / \ / \
|
||||
A B C D E F G H I J K L M N O P
|
||||
3 13 5 9 10 11 6 8 1 0 4 7 12 15 2 14
|
||||
|
||||
a - max
|
||||
b - exp
|
||||
c - max
|
||||
d - exp
|
||||
"""
|
||||
num_agents: "2"
|
||||
|
||||
start_state: "a"
|
||||
win_states: "A B C D E F G H I J K L M N O P"
|
||||
lose_states: ""
|
||||
|
||||
successors: """
|
||||
a Left b1
|
||||
a Right b2
|
||||
b1 Left c1
|
||||
b1 Right c2
|
||||
b2 Left c3
|
||||
b2 Right c4
|
||||
c1 Left d1
|
||||
c1 Right d2
|
||||
c2 Left d3
|
||||
c2 Right d4
|
||||
c3 Left d5
|
||||
c3 Right d6
|
||||
c4 Left d7
|
||||
c4 Right d8
|
||||
d1 Left A
|
||||
d1 Right B
|
||||
d2 Left C
|
||||
d2 Right D
|
||||
d3 Left E
|
||||
d3 Right F
|
||||
d4 Left G
|
||||
d4 Right H
|
||||
d5 Left I
|
||||
d5 Right J
|
||||
d6 Left K
|
||||
d6 Right L
|
||||
d7 Left M
|
||||
d7 Right N
|
||||
d8 Left O
|
||||
d8 Right P
|
||||
"""
|
||||
|
||||
evaluation: """
|
||||
A 3.0
|
||||
B 13.0
|
||||
C 5.0
|
||||
D 9.0
|
||||
E 10.0
|
||||
F 11.0
|
||||
G 6.0
|
||||
H 8.0
|
||||
I 1.0
|
||||
J 0.0
|
||||
K 4.0
|
||||
L 7.0
|
||||
M 12.0
|
||||
N 15.0
|
||||
O 2.0
|
||||
P 14.0
|
||||
"""
|
||||
@@ -0,0 +1,3 @@
|
||||
# This is the solution file for test_cases/q4/4-two-ghosts-3level.test.
|
||||
action: "Left"
|
||||
generated: "a b1 b2 c1 c2 c3 c4 d1 d2 d3 d4 d5 d6 d7 d8"
|
||||
@@ -0,0 +1,52 @@
|
||||
class: "GraphGameTreeTest"
|
||||
alg: "ExpectimaxAgent"
|
||||
depth: "3"
|
||||
|
||||
diagram: """
|
||||
/-----a------\
|
||||
/ \
|
||||
/ \
|
||||
b1 b2
|
||||
/ \ / \
|
||||
c1 c2 c3 c4
|
||||
/ \ / \ / \ / \
|
||||
d1 d2 d3 d4 d5 d6 d7 d8
|
||||
3 9 10 6 4 7 0 5
|
||||
|
||||
a - max
|
||||
b - exp
|
||||
c - exp
|
||||
"""
|
||||
num_agents: "3"
|
||||
|
||||
start_state: "a"
|
||||
win_states: "d1 d2 d3 d4 d5 d6 d7 d8"
|
||||
lose_states: ""
|
||||
|
||||
successors: """
|
||||
a Left b1
|
||||
a Right b2
|
||||
b1 Left c1
|
||||
b1 Right c2
|
||||
b2 Left c3
|
||||
b2 Right c4
|
||||
c1 Left d1
|
||||
c1 Right d2
|
||||
c2 Left d3
|
||||
c2 Right d4
|
||||
c3 Left d5
|
||||
c3 Right d6
|
||||
c4 Left d7
|
||||
c4 Right d8
|
||||
"""
|
||||
|
||||
evaluation: """
|
||||
d1 3.0
|
||||
d2 9.0
|
||||
d3 10.0
|
||||
d4 6.0
|
||||
d5 4.0
|
||||
d6 7.0
|
||||
d7 0.0
|
||||
d8 5.0
|
||||
"""
|
||||
@@ -0,0 +1,3 @@
|
||||
# This is the solution file for test_cases/q4/5-two-ghosts-4level.test.
|
||||
action: "Left"
|
||||
generated: "A B C D E F G H I J K L M N O P a b1 b2 c1 c2 c3 c4 d1 d2 d3 d4 d5 d6 d7 d8"
|
||||
@@ -0,0 +1,79 @@
|
||||
class: "GraphGameTreeTest"
|
||||
alg: "ExpectimaxAgent"
|
||||
depth: "4"
|
||||
|
||||
diagram: """
|
||||
/-----a------\
|
||||
/ \
|
||||
/ \
|
||||
b1 b2
|
||||
/ \ / \
|
||||
c1 c2 c3 c4
|
||||
/ \ / \ / \ / \
|
||||
d1 d2 d3 d4 d5 d6 d7 d8
|
||||
/ \ / \ / \ / \ / \ / \ / \ / \
|
||||
A B C D E F G H I J K L M N O P
|
||||
3 13 5 9 10 11 6 8 1 0 4 7 12 15 2 14
|
||||
|
||||
a - max
|
||||
b - exp
|
||||
c - exp
|
||||
d - max
|
||||
"""
|
||||
num_agents: "3"
|
||||
|
||||
start_state: "a"
|
||||
win_states: "A B C D E F G H I J K L M N O P"
|
||||
lose_states: ""
|
||||
|
||||
successors: """
|
||||
a Left b1
|
||||
a Right b2
|
||||
b1 Left c1
|
||||
b1 Right c2
|
||||
b2 Left c3
|
||||
b2 Right c4
|
||||
c1 Left d1
|
||||
c1 Right d2
|
||||
c2 Left d3
|
||||
c2 Right d4
|
||||
c3 Left d5
|
||||
c3 Right d6
|
||||
c4 Left d7
|
||||
c4 Right d8
|
||||
d1 Left A
|
||||
d1 Right B
|
||||
d2 Left C
|
||||
d2 Right D
|
||||
d3 Left E
|
||||
d3 Right F
|
||||
d4 Left G
|
||||
d4 Right H
|
||||
d5 Left I
|
||||
d5 Right J
|
||||
d6 Left K
|
||||
d6 Right L
|
||||
d7 Left M
|
||||
d7 Right N
|
||||
d8 Left O
|
||||
d8 Right P
|
||||
"""
|
||||
|
||||
evaluation: """
|
||||
A 3.0
|
||||
B 13.0
|
||||
C 5.0
|
||||
D 9.0
|
||||
E 10.0
|
||||
F 11.0
|
||||
G 6.0
|
||||
H 8.0
|
||||
I 1.0
|
||||
J 0.0
|
||||
K 4.0
|
||||
L 7.0
|
||||
M 12.0
|
||||
N 15.0
|
||||
O 2.0
|
||||
P 14.0
|
||||
"""
|
||||
@@ -0,0 +1,3 @@
|
||||
# This is the solution file for test_cases/q4/6-1a-check-depth-one-ghost.test.
|
||||
action: "Left"
|
||||
generated: "a b1 b2 b3 c1 c2 c3"
|
||||
@@ -0,0 +1,83 @@
|
||||
class: "GraphGameTreeTest"
|
||||
alg: "ExpectimaxAgent"
|
||||
depth: "1"
|
||||
|
||||
diagram: """
|
||||
a
|
||||
/-/ | \--\
|
||||
/ | \
|
||||
0 b1 0 b2 b3 8
|
||||
| | |
|
||||
10 c1 0 c2 c3 8
|
||||
| | |
|
||||
0 d1 0 d2 d3 8
|
||||
| | |
|
||||
0 e1 10 e2 e3 8
|
||||
| | |
|
||||
0 f1 0 f2 f3 8
|
||||
| | |
|
||||
g1 g2 g3
|
||||
0 0 8
|
||||
|
||||
a - max
|
||||
b - min
|
||||
c - max
|
||||
d - min
|
||||
e - max
|
||||
f - min
|
||||
|
||||
At depth 1, the evaluation function is called at level c,
|
||||
so Left should be returned. If your algorithm is returning a
|
||||
different action, check how you implemented your depth.
|
||||
"""
|
||||
|
||||
num_agents: "2"
|
||||
|
||||
start_state: "a"
|
||||
win_states: "g1 g2 g3"
|
||||
lose_states: ""
|
||||
|
||||
successors: """
|
||||
a Left b1
|
||||
a Center b2
|
||||
a Right b3
|
||||
b1 Center c1
|
||||
b2 Center c2
|
||||
b3 Center c3
|
||||
c1 Center d1
|
||||
c2 Center d2
|
||||
c3 Center d3
|
||||
d1 Center e1
|
||||
d2 Center e2
|
||||
d3 Center e3
|
||||
e1 Center f1
|
||||
e2 Center f2
|
||||
e3 Center f3
|
||||
f1 Center g1
|
||||
f2 Center g2
|
||||
f3 Center g3
|
||||
"""
|
||||
|
||||
|
||||
evaluation: """
|
||||
b1 0.0
|
||||
b2 0.0
|
||||
b3 8.0
|
||||
c1 10.0
|
||||
c2 0.0
|
||||
c3 8.0
|
||||
d1 0.0
|
||||
d2 0.0
|
||||
d3 8.0
|
||||
e1 0.0
|
||||
e2 10.0
|
||||
e3 8.0
|
||||
f1 0.0
|
||||
f2 0.0
|
||||
f3 8.0
|
||||
g1 0.0
|
||||
g2 0.0
|
||||
g3 8.0
|
||||
"""
|
||||
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
# This is the solution file for test_cases/q4/6-1b-check-depth-one-ghost.test.
|
||||
action: "Center"
|
||||
generated: "a b1 b2 b3 c1 c2 c3 d1 d2 d3 e1 e2 e3"
|
||||
@@ -0,0 +1,83 @@
|
||||
class: "GraphGameTreeTest"
|
||||
alg: "ExpectimaxAgent"
|
||||
depth: "2"
|
||||
|
||||
diagram: """
|
||||
a
|
||||
/-/ | \--\
|
||||
/ | \
|
||||
0 b1 0 b2 b3 8
|
||||
| | |
|
||||
10 c1 0 c2 c3 8
|
||||
| | |
|
||||
0 d1 0 d2 d3 8
|
||||
| | |
|
||||
0 e1 10 e2 e3 8
|
||||
| | |
|
||||
0 f1 0 f2 f3 8
|
||||
| | |
|
||||
g1 g2 g3
|
||||
0 0 8
|
||||
|
||||
a - max
|
||||
b - min
|
||||
c - max
|
||||
d - min
|
||||
e - max
|
||||
f - min
|
||||
|
||||
At depth 2, the evaluation function is called at level e,
|
||||
so Center should be returned. If your algorithm is returning a
|
||||
different action, check how you implemented your depth.
|
||||
"""
|
||||
|
||||
num_agents: "2"
|
||||
|
||||
start_state: "a"
|
||||
win_states: "g1 g2 g3"
|
||||
lose_states: ""
|
||||
|
||||
successors: """
|
||||
a Left b1
|
||||
a Center b2
|
||||
a Right b3
|
||||
b1 Center c1
|
||||
b2 Center c2
|
||||
b3 Center c3
|
||||
c1 Center d1
|
||||
c2 Center d2
|
||||
c3 Center d3
|
||||
d1 Center e1
|
||||
d2 Center e2
|
||||
d3 Center e3
|
||||
e1 Center f1
|
||||
e2 Center f2
|
||||
e3 Center f3
|
||||
f1 Center g1
|
||||
f2 Center g2
|
||||
f3 Center g3
|
||||
"""
|
||||
|
||||
|
||||
evaluation: """
|
||||
b1 0.0
|
||||
b2 0.0
|
||||
b3 8.0
|
||||
c1 10.0
|
||||
c2 0.0
|
||||
c3 8.0
|
||||
d1 0.0
|
||||
d2 0.0
|
||||
d3 8.0
|
||||
e1 0.0
|
||||
e2 10.0
|
||||
e3 8.0
|
||||
f1 0.0
|
||||
f2 0.0
|
||||
f3 8.0
|
||||
g1 0.0
|
||||
g2 0.0
|
||||
g3 8.0
|
||||
"""
|
||||
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
# This is the solution file for test_cases/q4/6-1c-check-depth-one-ghost.test.
|
||||
action: "Right"
|
||||
generated: "a b1 b2 b3 c1 c2 c3 d1 d2 d3 e1 e2 e3 f1 f2 f3 g1 g2 g3"
|
||||
@@ -0,0 +1,83 @@
|
||||
class: "GraphGameTreeTest"
|
||||
alg: "ExpectimaxAgent"
|
||||
depth: "3"
|
||||
|
||||
diagram: """
|
||||
a
|
||||
/-/ | \--\
|
||||
/ | \
|
||||
0 b1 0 b2 b3 8
|
||||
| | |
|
||||
10 c1 0 c2 c3 8
|
||||
| | |
|
||||
0 d1 0 d2 d3 8
|
||||
| | |
|
||||
0 e1 10 e2 e3 8
|
||||
| | |
|
||||
0 f1 0 f2 f3 8
|
||||
| | |
|
||||
g1 g2 g3
|
||||
0 0 8
|
||||
|
||||
a - max
|
||||
b - min
|
||||
c - max
|
||||
d - min
|
||||
e - max
|
||||
f - min
|
||||
|
||||
At depth 3, the evaluation function is called at level g,
|
||||
so Right should be returned. If your algorithm is returning a
|
||||
different action, check how you implemented your depth.
|
||||
"""
|
||||
|
||||
num_agents: "2"
|
||||
|
||||
start_state: "a"
|
||||
win_states: "g1 g2 g3"
|
||||
lose_states: ""
|
||||
|
||||
successors: """
|
||||
a Left b1
|
||||
a Center b2
|
||||
a Right b3
|
||||
b1 Center c1
|
||||
b2 Center c2
|
||||
b3 Center c3
|
||||
c1 Center d1
|
||||
c2 Center d2
|
||||
c3 Center d3
|
||||
d1 Center e1
|
||||
d2 Center e2
|
||||
d3 Center e3
|
||||
e1 Center f1
|
||||
e2 Center f2
|
||||
e3 Center f3
|
||||
f1 Center g1
|
||||
f2 Center g2
|
||||
f3 Center g3
|
||||
"""
|
||||
|
||||
|
||||
evaluation: """
|
||||
b1 0.0
|
||||
b2 0.0
|
||||
b3 8.0
|
||||
c1 10.0
|
||||
c2 0.0
|
||||
c3 8.0
|
||||
d1 0.0
|
||||
d2 0.0
|
||||
d3 8.0
|
||||
e1 0.0
|
||||
e2 10.0
|
||||
e3 8.0
|
||||
f1 0.0
|
||||
f2 0.0
|
||||
f3 8.0
|
||||
g1 0.0
|
||||
g2 0.0
|
||||
g3 8.0
|
||||
"""
|
||||
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
# This is the solution file for test_cases/q4/6-2a-check-depth-two-ghosts.test.
|
||||
action: "Left"
|
||||
generated: "a b1 b2 b3 c1 c2 c3 d1 d2 d3"
|
||||
@@ -0,0 +1,110 @@
|
||||
class: "GraphGameTreeTest"
|
||||
alg: "ExpectimaxAgent"
|
||||
depth: "1"
|
||||
|
||||
diagram: """
|
||||
a
|
||||
/-/ | \--\
|
||||
/ | \
|
||||
0 b1 0 b2 b3 8
|
||||
| | |
|
||||
0 c1 0 c2 c3 8
|
||||
| | |
|
||||
10 d1 0 d2 d3 8
|
||||
| | |
|
||||
0 e1 0 e2 e3 8
|
||||
| | |
|
||||
0 f1 0 f2 f3 8
|
||||
| | |
|
||||
0 g1 10 g2 g3 8
|
||||
| | |
|
||||
0 h1 0 h2 h3 8
|
||||
| | |
|
||||
0 i1 0 i2 i3 8
|
||||
| | |
|
||||
j1 j2 j3
|
||||
0 0 8
|
||||
|
||||
a - max
|
||||
b - min
|
||||
c - min
|
||||
d - max
|
||||
e - min
|
||||
f - min
|
||||
g - max
|
||||
h - min
|
||||
i - min
|
||||
|
||||
At depth 1, the evaluation function is called at level d,
|
||||
so Left should be returned. If your algorithm is returning a
|
||||
different action, check how you implemented your depth.
|
||||
"""
|
||||
|
||||
num_agents: "3"
|
||||
|
||||
start_state: "a"
|
||||
win_states: "j1 j2 j3"
|
||||
lose_states: ""
|
||||
|
||||
successors: """
|
||||
a Left b1
|
||||
a Center b2
|
||||
a Right b3
|
||||
b1 Center c1
|
||||
b2 Center c2
|
||||
b3 Center c3
|
||||
c1 Center d1
|
||||
c2 Center d2
|
||||
c3 Center d3
|
||||
d1 Center e1
|
||||
d2 Center e2
|
||||
d3 Center e3
|
||||
e1 Center f1
|
||||
e2 Center f2
|
||||
e3 Center f3
|
||||
f1 Center g1
|
||||
f2 Center g2
|
||||
f3 Center g3
|
||||
g1 Center h1
|
||||
g2 Center h2
|
||||
g3 Center h3
|
||||
h1 Center i1
|
||||
h2 Center i2
|
||||
h3 Center i3
|
||||
i1 Center j1
|
||||
i2 Center j2
|
||||
i3 Center j3
|
||||
"""
|
||||
|
||||
|
||||
evaluation: """
|
||||
b1 0.0
|
||||
b2 0.0
|
||||
b3 8.0
|
||||
c1 0.0
|
||||
c2 0.0
|
||||
c3 8.0
|
||||
d1 10.0
|
||||
d2 0.0
|
||||
d3 8.0
|
||||
e1 0.0
|
||||
e2 0.0
|
||||
e3 8.0
|
||||
f1 0.0
|
||||
f2 0.0
|
||||
f3 8.0
|
||||
g1 0.0
|
||||
g2 10.0
|
||||
g3 8.0
|
||||
h1 0.0
|
||||
h2 0.0
|
||||
h3 8.0
|
||||
i1 0.0
|
||||
i2 0.0
|
||||
i3 8.0
|
||||
j1 0.0
|
||||
j2 0.0
|
||||
j3 8.0
|
||||
"""
|
||||
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
# This is the solution file for test_cases/q4/6-2b-check-depth-two-ghosts.test.
|
||||
action: "Center"
|
||||
generated: "a b1 b2 b3 c1 c2 c3 d1 d2 d3 e1 e2 e3 f1 f2 f3 g1 g2 g3"
|
||||
@@ -0,0 +1,110 @@
|
||||
class: "GraphGameTreeTest"
|
||||
alg: "ExpectimaxAgent"
|
||||
depth: "2"
|
||||
|
||||
diagram: """
|
||||
a
|
||||
/-/ | \--\
|
||||
/ | \
|
||||
0 b1 0 b2 b3 8
|
||||
| | |
|
||||
0 c1 0 c2 c3 8
|
||||
| | |
|
||||
10 d1 0 d2 d3 8
|
||||
| | |
|
||||
0 e1 0 e2 e3 8
|
||||
| | |
|
||||
0 f1 0 f2 f3 8
|
||||
| | |
|
||||
0 g1 10 g2 g3 8
|
||||
| | |
|
||||
0 h1 0 h2 h3 8
|
||||
| | |
|
||||
0 i1 0 i2 i3 8
|
||||
| | |
|
||||
j1 j2 j3
|
||||
0 0 8
|
||||
|
||||
a - max
|
||||
b - min
|
||||
c - min
|
||||
d - max
|
||||
e - min
|
||||
f - min
|
||||
g - max
|
||||
h - min
|
||||
i - min
|
||||
|
||||
At depth 2, the evaluation function is called at level g,
|
||||
so Center should be returned. If your algorithm is returning
|
||||
a different action, check how you implemented your depth.
|
||||
"""
|
||||
|
||||
num_agents: "3"
|
||||
|
||||
start_state: "a"
|
||||
win_states: "j1 j2 j3"
|
||||
lose_states: ""
|
||||
|
||||
successors: """
|
||||
a Left b1
|
||||
a Center b2
|
||||
a Right b3
|
||||
b1 Center c1
|
||||
b2 Center c2
|
||||
b3 Center c3
|
||||
c1 Center d1
|
||||
c2 Center d2
|
||||
c3 Center d3
|
||||
d1 Center e1
|
||||
d2 Center e2
|
||||
d3 Center e3
|
||||
e1 Center f1
|
||||
e2 Center f2
|
||||
e3 Center f3
|
||||
f1 Center g1
|
||||
f2 Center g2
|
||||
f3 Center g3
|
||||
g1 Center h1
|
||||
g2 Center h2
|
||||
g3 Center h3
|
||||
h1 Center i1
|
||||
h2 Center i2
|
||||
h3 Center i3
|
||||
i1 Center j1
|
||||
i2 Center j2
|
||||
i3 Center j3
|
||||
"""
|
||||
|
||||
|
||||
evaluation: """
|
||||
b1 0.0
|
||||
b2 0.0
|
||||
b3 8.0
|
||||
c1 0.0
|
||||
c2 0.0
|
||||
c3 8.0
|
||||
d1 10.0
|
||||
d2 0.0
|
||||
d3 8.0
|
||||
e1 0.0
|
||||
e2 0.0
|
||||
e3 8.0
|
||||
f1 0.0
|
||||
f2 0.0
|
||||
f3 8.0
|
||||
g1 0.0
|
||||
g2 10.0
|
||||
g3 8.0
|
||||
h1 0.0
|
||||
h2 0.0
|
||||
h3 8.0
|
||||
i1 0.0
|
||||
i2 0.0
|
||||
i3 8.0
|
||||
j1 0.0
|
||||
j2 0.0
|
||||
j3 8.0
|
||||
"""
|
||||
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
# This is the solution file for test_cases/q4/6-2c-check-depth-two-ghosts.test.
|
||||
action: "Right"
|
||||
generated: "a b1 b2 b3 c1 c2 c3 d1 d2 d3 e1 e2 e3 f1 f2 f3 g1 g2 g3 h1 h2 h3 i1 i2 i3 j1 j2 j3"
|
||||
@@ -0,0 +1,110 @@
|
||||
class: "GraphGameTreeTest"
|
||||
alg: "ExpectimaxAgent"
|
||||
depth: "3"
|
||||
|
||||
diagram: """
|
||||
a
|
||||
/-/ | \--\
|
||||
/ | \
|
||||
0 b1 0 b2 b3 8
|
||||
| | |
|
||||
0 c1 0 c2 c3 8
|
||||
| | |
|
||||
10 d1 0 d2 d3 8
|
||||
| | |
|
||||
0 e1 0 e2 e3 8
|
||||
| | |
|
||||
0 f1 0 f2 f3 8
|
||||
| | |
|
||||
0 g1 10 g2 g3 8
|
||||
| | |
|
||||
0 h1 0 h2 h3 8
|
||||
| | |
|
||||
0 i1 0 i2 i3 8
|
||||
| | |
|
||||
j1 j2 j3
|
||||
0 0 8
|
||||
|
||||
a - max
|
||||
b - min
|
||||
c - min
|
||||
d - max
|
||||
e - min
|
||||
f - min
|
||||
g - max
|
||||
h - min
|
||||
i - min
|
||||
|
||||
At depth 3, the evaluation function is called at level j,
|
||||
so Right should be returned. If your algorithm is returning
|
||||
a different action, check how you implemented your depth.
|
||||
"""
|
||||
|
||||
num_agents: "3"
|
||||
|
||||
start_state: "a"
|
||||
win_states: "j1 j2 j3"
|
||||
lose_states: ""
|
||||
|
||||
successors: """
|
||||
a Left b1
|
||||
a Center b2
|
||||
a Right b3
|
||||
b1 Center c1
|
||||
b2 Center c2
|
||||
b3 Center c3
|
||||
c1 Center d1
|
||||
c2 Center d2
|
||||
c3 Center d3
|
||||
d1 Center e1
|
||||
d2 Center e2
|
||||
d3 Center e3
|
||||
e1 Center f1
|
||||
e2 Center f2
|
||||
e3 Center f3
|
||||
f1 Center g1
|
||||
f2 Center g2
|
||||
f3 Center g3
|
||||
g1 Center h1
|
||||
g2 Center h2
|
||||
g3 Center h3
|
||||
h1 Center i1
|
||||
h2 Center i2
|
||||
h3 Center i3
|
||||
i1 Center j1
|
||||
i2 Center j2
|
||||
i3 Center j3
|
||||
"""
|
||||
|
||||
|
||||
evaluation: """
|
||||
b1 0.0
|
||||
b2 0.0
|
||||
b3 8.0
|
||||
c1 0.0
|
||||
c2 0.0
|
||||
c3 8.0
|
||||
d1 10.0
|
||||
d2 0.0
|
||||
d3 8.0
|
||||
e1 0.0
|
||||
e2 0.0
|
||||
e3 8.0
|
||||
f1 0.0
|
||||
f2 0.0
|
||||
f3 8.0
|
||||
g1 0.0
|
||||
g2 10.0
|
||||
g3 8.0
|
||||
h1 0.0
|
||||
h2 0.0
|
||||
h3 8.0
|
||||
i1 0.0
|
||||
i2 0.0
|
||||
i3 8.0
|
||||
j1 0.0
|
||||
j2 0.0
|
||||
j3 8.0
|
||||
"""
|
||||
|
||||
|
||||
@@ -0,0 +1,444 @@
|
||||
optimalActions: """
|
||||
[[["West", "East"], 59], [["West", "East"], 35]]
|
||||
[[["West"], 190], [["West"], 127]]
|
||||
[[["West"], 190], [["West"], 135]]
|
||||
[[["West", "North"], 120], [["West", "North"], 82]]
|
||||
[[["West"], 77], [["West"], 57]]
|
||||
[[["West", "North"], 143], [["West", "North"], 97]]
|
||||
[[["West"], 155], [["West"], 110]]
|
||||
[[["West"], 40], [["West"], 27]]
|
||||
[[["North"], 64], [["North"], 43]]
|
||||
[[["North"], 85], [["North"], 57]]
|
||||
[[["North"], 106], [["North"], 71]]
|
||||
[[["North"], 97], [["North"], 65]]
|
||||
[[["East"], 154], [["East"], 103]]
|
||||
[[["Stop"], 130], [["West"], 85]]
|
||||
[[["West"], 30], [["West"], 17]]
|
||||
[[["South"], 15], [["South"], 9]]
|
||||
[[["South"], 15], [["South"], 9]]
|
||||
[[["South"], 15], [["South"], 9]]
|
||||
[[["South"], 15], [["South"], 9]]
|
||||
[[["East"], 15], [["East"], 9]]
|
||||
[[["East"], 15], [["East"], 9]]
|
||||
[[["East"], 18], [["East"], 12]]
|
||||
[[["North"], 29], [["North"], 18]]
|
||||
[[["North"], 50], [["North"], 31]]
|
||||
[[["West"], 55], [["West"], 36]]
|
||||
[[["East"], 29], [["East"], 16]]
|
||||
[[["North"], 89], [["North"], 61]]
|
||||
[[["East", "North"], 161], [["East", "North"], 121]]
|
||||
[[["East", "North"], 221], [["East", "North"], 166]]
|
||||
[[["North", "South"], 105], [["North", "South"], 77]]
|
||||
[[["West"], 69], [["West"], 51]]
|
||||
[[["West"], 94], [["West"], 69]]
|
||||
[[["West", "Stop"], 57], [["West"], 42]]
|
||||
[[["West", "Stop", "East"], 69], [["West", "East"], 49]]
|
||||
[[["West", "Stop", "East"], 61], [["West", "East"], 41]]
|
||||
[[["Stop", "East", "South"], 55], [["East", "South"], 37]]
|
||||
[[["Stop", "East", "South"], 28], [["East", "South"], 19]]
|
||||
[[["Stop", "East", "South"], 34], [["East", "South"], 23]]
|
||||
[[["Stop", "East", "South"], 55], [["East", "South"], 37]]
|
||||
[[["Stop", "East", "South"], 55], [["East", "South"], 37]]
|
||||
[[["Stop", "East", "South"], 61], [["East", "South"], 41]]
|
||||
[[["Stop", "East", "South"], 85], [["East", "South"], 57]]
|
||||
[[["Stop", "East", "South"], 64], [["East", "South"], 43]]
|
||||
[[["Stop", "East", "South"], 61], [["East", "South"], 41]]
|
||||
[[["Stop", "East", "South"], 61], [["East", "South"], 41]]
|
||||
[[["Stop", "East", "South"], 85], [["East", "South"], 57]]
|
||||
[[["Stop", "East", "South"], 102], [["East", "South"], 67]]
|
||||
[[["Stop", "South"], 23], [["South"], 13]]
|
||||
[[["South"], 15], [["South"], 9]]
|
||||
[[["South"], 15], [["South"], 9]]
|
||||
[[["South"], 15], [["South"], 9]]
|
||||
[[["South"], 15], [["South"], 9]]
|
||||
[[["East"], 15], [["East"], 9]]
|
||||
[[["East"], 15], [["East"], 9]]
|
||||
[[["East"], 18], [["East"], 12]]
|
||||
[[["East", "North"], 29], [["East", "North"], 18]]
|
||||
[[["East"], 38], [["East"], 22]]
|
||||
[[["North"], 29], [["North"], 18]]
|
||||
[[["North"], 38], [["North"], 22]]
|
||||
[[["East"], 33], [["East"], 22]]
|
||||
[[["East"], 37], [["East"], 18]]
|
||||
[[["East"], 18], [["East"], 12]]
|
||||
[[["East"], 37], [["East"], 26]]
|
||||
[[["East"], 69], [["East"], 41]]
|
||||
[[["East"], 56], [["East"], 26]]
|
||||
[[["East"], 44], [["East"], 29]]
|
||||
[[["North", "South"], 83], [["North", "South"], 52]]
|
||||
[[["East", "North"], 121], [["East", "North"], 74]]
|
||||
[[["East", "North"], 97], [["East", "North"], 73]]
|
||||
[[["North", "South"], 173], [["North", "South"], 130]]
|
||||
[[["West", "East"], 90], [["West", "East"], 66]]
|
||||
[[["West", "Stop", "East"], 161], [["West", "East"], 118]]
|
||||
[[["Stop", "East", "South"], 58], [["East", "South"], 43]]
|
||||
[[["Stop", "East"], 120], [["East"], 85]]
|
||||
[[["East"], 78], [["East"], 45]]
|
||||
[[["West"], 77], [["West"], 42]]
|
||||
[[["South"], 83], [["South"], 48]]
|
||||
[[["South"], 49], [["South"], 37]]
|
||||
[[["South"], 185], [["South"], 104]]
|
||||
[[["South"], 68], [["South"], 41]]
|
||||
[[["West"], 30], [["West"], 18]]
|
||||
[[["West"], 56], [["West"], 29]]
|
||||
[[["West"], 14], [["West"], 10]]
|
||||
[[["West"], 20], [["West"], 14]]
|
||||
[[["West"], 13], [["West"], 9]]
|
||||
[[["West"], 13], [["West"], 9]]
|
||||
[[["West"], 16], [["West"], 12]]
|
||||
[[["West", "North"], 30], [["West", "North"], 20]]
|
||||
[[["West"], 38], [["West"], 23]]
|
||||
[[["West", "Stop", "East", "North"], 70], [["West", "East", "North"], 46]]
|
||||
[[["West", "Stop", "East"], 128], [["West", "East"], 89]]
|
||||
[[["West", "Stop", "East"], 31], [["West", "East"], 20]]
|
||||
[[["Stop", "East", "North"], 69], [["East", "North"], 45]]
|
||||
[[["Stop", "North"], 58], [["North"], 31]]
|
||||
[[["North"], 34], [["North"], 19]]
|
||||
[[["North"], 30], [["North"], 17]]
|
||||
[[["North"], 19], [["North"], 11]]
|
||||
[[["North"], 34], [["North"], 19]]
|
||||
[[["East"], 30], [["East"], 17]]
|
||||
[[["East"], 19], [["East"], 11]]
|
||||
[[["East"], 44], [["East"], 29]]
|
||||
[[["East", "South"], 87], [["East", "South"], 60]]
|
||||
[[["East", "South"], 108], [["East", "South"], 62]]
|
||||
[[["South"], 120], [["South"], 61]]
|
||||
[[["North", "South"], 209], [["North", "South"], 132]]
|
||||
[[["West"], 108], [["West"], 60]]
|
||||
[[["West", "Stop", "East", "South"], 83], [["West", "East", "South"], 61]]
|
||||
[[["West", "Stop", "East", "South"], 90], [["West", "East", "South"], 66]]
|
||||
[[["West", "Stop", "East"], 134], [["West", "East"], 95]]
|
||||
[[["West", "Stop", "East"], 82], [["West", "East"], 55]]
|
||||
[[["Stop", "East", "South"], 142], [["East", "South"], 95]]
|
||||
[[["Stop", "East", "South"], 98], [["East", "South"], 65]]
|
||||
[[["Stop", "East", "South"], 128], [["East", "South"], 86]]
|
||||
[[["Stop", "East", "South"], 82], [["East", "South"], 55]]
|
||||
[[["Stop", "East", "South"], 85], [["East", "South"], 57]]
|
||||
[[["Stop", "East", "South"], 190], [["East", "South"], 127]]
|
||||
[[["Stop", "East", "South"], 158], [["East", "South"], 103]]
|
||||
[[["Stop", "South"], 50], [["South"], 27]]
|
||||
[[["South"], 30], [["South"], 17]]
|
||||
[[["South"], 15], [["South"], 9]]
|
||||
[[["South"], 15], [["South"], 9]]
|
||||
[[["South"], 15], [["South"], 9]]
|
||||
[[["East"], 15], [["East"], 9]]
|
||||
[[["East"], 15], [["East"], 9]]
|
||||
[[["East"], 18], [["East"], 12]]
|
||||
[[["East", "North"], 29], [["East", "North"], 18]]
|
||||
[[["East"], 37], [["East"], 22]]
|
||||
[[["East", "North"], 41], [["East", "North"], 24]]
|
||||
[[["East"], 59], [["East"], 29]]
|
||||
[[["East"], 19], [["East"], 11]]
|
||||
[[["East"], 26], [["East"], 15]]
|
||||
[[["East"], 15], [["East"], 9]]
|
||||
[[["East"], 15], [["East"], 9]]
|
||||
[[["East"], 18], [["East"], 12]]
|
||||
[[["East"], 29], [["East"], 18]]
|
||||
[[["East"], 37], [["East"], 22]]
|
||||
[[["East", "North"], 41], [["East", "North"], 24]]
|
||||
[[["East"], 59], [["East"], 29]]
|
||||
[[["East"], 19], [["East"], 11]]
|
||||
[[["North"], 26], [["North"], 15]]
|
||||
[[["North"], 19], [["North"], 11]]
|
||||
[[["North"], 30], [["North"], 17]]
|
||||
[[["North"], 34], [["North"], 19]]
|
||||
[[["West"], 34], [["West"], 19]]
|
||||
[[["West"], 25], [["West"], 13]]
|
||||
[[["West", "Stop", "East"], 7], [["West", "East"], 3]]
|
||||
"""
|
||||
altDepthActions: """
|
||||
[["West", "East"], ["West", "East"], ["West", "East"], ["West", "East"]]
|
||||
[["West"], ["West"], ["West"], ["West"]]
|
||||
[["West"], ["West"], ["West"], ["West"]]
|
||||
[["West", "North"], ["West", "North"], ["West", "North"], ["West", "North"]]
|
||||
[["West"], ["West"], ["West"], ["West"]]
|
||||
[["West", "North"], ["West", "North"], ["West", "North"], ["West", "North"]]
|
||||
[["West"], ["West"], ["West"], ["West"]]
|
||||
[["West"], ["West"], ["West"], ["West"]]
|
||||
[["North"], ["North"], ["North"], ["North"]]
|
||||
[["North"], ["North"], ["North"], ["North"]]
|
||||
[["North"], ["North"], ["North"], ["North"]]
|
||||
[["North"], ["North"], ["North"], ["North"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["West", "Stop"], ["West"], ["Stop"], ["West"]]
|
||||
[["West"], ["West"], ["West"], ["West"]]
|
||||
[["South"], ["South"], ["South"], ["South"]]
|
||||
[["South"], ["South"], ["South"], ["South"]]
|
||||
[["South"], ["South"], ["South"], ["South"]]
|
||||
[["South"], ["South"], ["South"], ["South"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["North"], ["North"], ["North"], ["North"]]
|
||||
[["North"], ["North"], ["North"], ["North"]]
|
||||
[["North"], ["North"], ["West"], ["West"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["North"], ["North"], ["North"], ["North"]]
|
||||
[["East", "North"], ["East", "North"], ["East", "North"], ["East", "North"]]
|
||||
[["East", "North"], ["East", "North"], ["East"], ["East"]]
|
||||
[["North", "South"], ["North", "South"], ["North"], ["North"]]
|
||||
[["West"], ["West"], ["West"], ["West"]]
|
||||
[["West"], ["West"], ["West", "Stop"], ["West"]]
|
||||
[["West"], ["West"], ["West", "Stop", "East", "South"], ["West", "East", "South"]]
|
||||
[["West", "Stop", "East"], ["West", "East"], ["West", "Stop", "East"], ["West", "East"]]
|
||||
[["West", "Stop", "East"], ["West", "East"], ["West", "Stop", "East"], ["West", "East"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "South"], ["South"], ["Stop", "South"], ["South"]]
|
||||
[["South"], ["South"], ["South"], ["South"]]
|
||||
[["South"], ["South"], ["South"], ["South"]]
|
||||
[["South"], ["South"], ["South"], ["South"]]
|
||||
[["South"], ["South"], ["South"], ["South"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East", "North"], ["East", "North"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["North"], ["North"], ["North"], ["North"]]
|
||||
[["North"], ["North"], ["North"], ["North"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["North", "South"], ["North", "South"], ["South"], ["South"]]
|
||||
[["East", "North"], ["East", "North"], ["East", "North"], ["East", "North"]]
|
||||
[["East", "North"], ["East", "North"], ["East", "North"], ["East", "North"]]
|
||||
[["North", "South"], ["North", "South"], ["North"], ["North"]]
|
||||
[["West", "East"], ["West", "East"], ["East"], ["East"]]
|
||||
[["West"], ["West"], ["East"], ["East"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["East"], ["East"]]
|
||||
[["Stop", "East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["West"], ["West"], ["West"], ["West"]]
|
||||
[["South"], ["South"], ["South"], ["South"]]
|
||||
[["South"], ["South"], ["South"], ["South"]]
|
||||
[["South"], ["South"], ["South"], ["South"]]
|
||||
[["South"], ["South"], ["South"], ["South"]]
|
||||
[["West", "East"], ["West", "East"], ["West"], ["West"]]
|
||||
[["West"], ["West"], ["West"], ["West"]]
|
||||
[["West"], ["West"], ["West"], ["West"]]
|
||||
[["West"], ["West"], ["West"], ["West"]]
|
||||
[["West"], ["West"], ["West"], ["West"]]
|
||||
[["West"], ["West"], ["West"], ["West"]]
|
||||
[["West"], ["West"], ["West"], ["West"]]
|
||||
[["West", "North"], ["West", "North"], ["West", "North"], ["West", "North"]]
|
||||
[["West"], ["West"], ["West"], ["West"]]
|
||||
[["West", "Stop", "East", "North"], ["West", "East", "North"], ["West", "Stop", "East", "North"], ["West", "East", "North"]]
|
||||
[["West", "Stop", "East"], ["West", "East"], ["West", "Stop", "East"], ["West", "East"]]
|
||||
[["West", "Stop", "East"], ["West", "East"], ["West", "Stop", "East"], ["West", "East"]]
|
||||
[["Stop", "East", "North"], ["East", "North"], ["Stop", "East", "North"], ["East", "North"]]
|
||||
[["Stop", "North"], ["North"], ["Stop", "North"], ["North"]]
|
||||
[["North"], ["North"], ["North"], ["North"]]
|
||||
[["North"], ["North"], ["North"], ["North"]]
|
||||
[["North"], ["North"], ["North"], ["North"]]
|
||||
[["North"], ["North"], ["North"], ["North"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East", "South"], ["East", "South"], ["East", "South"], ["East", "South"]]
|
||||
[["East", "South"], ["East", "South"], ["East", "South"], ["East", "South"]]
|
||||
[["South"], ["South"], ["South"], ["South"]]
|
||||
[["North", "South"], ["North", "South"], ["North", "South"], ["North", "South"]]
|
||||
[["West"], ["West"], ["West"], ["West"]]
|
||||
[["West", "Stop", "East", "South"], ["West", "East", "South"], ["West", "Stop", "East", "South"], ["West", "East", "South"]]
|
||||
[["West", "Stop", "East", "South"], ["West", "East", "South"], ["West", "Stop", "East", "South"], ["West", "East", "South"]]
|
||||
[["West", "Stop", "East"], ["West", "East"], ["West", "Stop", "East"], ["West", "East"]]
|
||||
[["West", "Stop", "East"], ["West", "East"], ["West", "Stop", "East"], ["West", "East"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"], ["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "South"], ["South"], ["Stop", "South"], ["South"]]
|
||||
[["South"], ["South"], ["South"], ["South"]]
|
||||
[["South"], ["South"], ["South"], ["South"]]
|
||||
[["South"], ["South"], ["South"], ["South"]]
|
||||
[["South"], ["South"], ["South"], ["South"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East", "North"], ["East", "North"], ["East", "North"], ["East", "North"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East", "North"], ["East", "North"], ["East", "North"], ["East", "North"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East", "North"], ["East", "North"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["East"], ["East"], ["East"], ["East"]]
|
||||
[["North"], ["North"], ["North"], ["North"]]
|
||||
[["North"], ["North"], ["North"], ["North"]]
|
||||
[["North"], ["North"], ["North"], ["North"]]
|
||||
[["North"], ["North"], ["North"], ["North"]]
|
||||
[["West"], ["West"], ["West"], ["West"]]
|
||||
[["West"], ["West"], ["West"], ["West"]]
|
||||
[["West", "Stop", "East"], ["West", "East"], ["West", "Stop", "East"], ["West", "East"]]
|
||||
"""
|
||||
partialPlyBugActions: """
|
||||
[["West", "East"], ["West", "East"]]
|
||||
[["West"], ["West"]]
|
||||
[["West"], ["West"]]
|
||||
[["West", "North"], ["West", "North"]]
|
||||
[["West"], ["West"]]
|
||||
[["West", "North"], ["West", "North"]]
|
||||
[["West"], ["West"]]
|
||||
[["West"], ["West"]]
|
||||
[["North"], ["North"]]
|
||||
[["North"], ["North"]]
|
||||
[["North"], ["North"]]
|
||||
[["North"], ["North"]]
|
||||
[["East"], ["East"]]
|
||||
[["Stop"], ["West"]]
|
||||
[["West"], ["West"]]
|
||||
[["South"], ["South"]]
|
||||
[["South"], ["South"]]
|
||||
[["South"], ["South"]]
|
||||
[["South"], ["South"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["North"], ["North"]]
|
||||
[["North"], ["North"]]
|
||||
[["West"], ["West"]]
|
||||
[["East"], ["East"]]
|
||||
[["North"], ["North"]]
|
||||
[["East", "North"], ["East", "North"]]
|
||||
[["East", "North"], ["East", "North"]]
|
||||
[["North", "South"], ["North", "South"]]
|
||||
[["West"], ["West"]]
|
||||
[["West"], ["West"]]
|
||||
[["West", "Stop"], ["West"]]
|
||||
[["West", "Stop", "East"], ["West", "East"]]
|
||||
[["West", "Stop", "East"], ["West", "East"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "South"], ["South"]]
|
||||
[["South"], ["South"]]
|
||||
[["South"], ["South"]]
|
||||
[["South"], ["South"]]
|
||||
[["South"], ["South"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East", "North"], ["East", "North"]]
|
||||
[["East"], ["East"]]
|
||||
[["North"], ["North"]]
|
||||
[["North"], ["North"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["North", "South"], ["North", "South"]]
|
||||
[["East", "North"], ["East", "North"]]
|
||||
[["East", "North"], ["East", "North"]]
|
||||
[["North", "South"], ["North", "South"]]
|
||||
[["West", "East"], ["West", "East"]]
|
||||
[["West", "Stop", "East"], ["West", "East"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["West"], ["West"]]
|
||||
[["South"], ["South"]]
|
||||
[["South"], ["South"]]
|
||||
[["South"], ["South"]]
|
||||
[["South"], ["South"]]
|
||||
[["West"], ["West"]]
|
||||
[["West"], ["West"]]
|
||||
[["West"], ["West"]]
|
||||
[["West"], ["West"]]
|
||||
[["West"], ["West"]]
|
||||
[["West"], ["West"]]
|
||||
[["West"], ["West"]]
|
||||
[["West", "North"], ["West", "North"]]
|
||||
[["West"], ["West"]]
|
||||
[["West", "Stop", "East", "North"], ["West", "East", "North"]]
|
||||
[["West", "Stop", "East"], ["West", "East"]]
|
||||
[["West", "Stop", "East"], ["West", "East"]]
|
||||
[["Stop", "East", "North"], ["East", "North"]]
|
||||
[["Stop", "North"], ["North"]]
|
||||
[["North"], ["North"]]
|
||||
[["North"], ["North"]]
|
||||
[["North"], ["North"]]
|
||||
[["North"], ["North"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East", "South"], ["East", "South"]]
|
||||
[["East", "South"], ["East", "South"]]
|
||||
[["South"], ["South"]]
|
||||
[["North", "South"], ["North", "South"]]
|
||||
[["West"], ["West"]]
|
||||
[["West", "Stop", "East", "South"], ["West", "East", "South"]]
|
||||
[["West", "Stop", "East", "South"], ["West", "East", "South"]]
|
||||
[["West", "Stop", "East"], ["West", "East"]]
|
||||
[["West", "Stop", "East"], ["West", "East"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "East", "South"], ["East", "South"]]
|
||||
[["Stop", "South"], ["South"]]
|
||||
[["South"], ["South"]]
|
||||
[["South"], ["South"]]
|
||||
[["South"], ["South"]]
|
||||
[["South"], ["South"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East", "North"], ["East", "North"]]
|
||||
[["East"], ["East"]]
|
||||
[["East", "North"], ["East", "North"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["East", "North"], ["East", "North"]]
|
||||
[["East"], ["East"]]
|
||||
[["East"], ["East"]]
|
||||
[["North"], ["North"]]
|
||||
[["North"], ["North"]]
|
||||
[["North"], ["North"]]
|
||||
[["North"], ["North"]]
|
||||
[["West"], ["West"]]
|
||||
[["West"], ["West"]]
|
||||
[["West", "Stop", "East"], ["West", "East"]]
|
||||
"""
|
||||
@@ -0,0 +1,19 @@
|
||||
class: "PacmanGameTreeTest"
|
||||
alg: "ExpectimaxAgent"
|
||||
seed: "0"
|
||||
depth: "2"
|
||||
max_points: "4"
|
||||
|
||||
# The following specifies the layout to be used
|
||||
layoutName: "smallClassic"
|
||||
layout: """
|
||||
%%%%%%%%%%%%%%%%%%%%
|
||||
%......%G G%......%
|
||||
%.%%...%% %%...%%.%
|
||||
%.%o.%........%.o%.%
|
||||
%.%%.%.%%%%%%.%.%%.%
|
||||
%........P.........%
|
||||
%%%%%%%%%%%%%%%%%%%%
|
||||
"""
|
||||
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
max_points: "5"
|
||||
class: "PassAllTestsQuestion"
|
||||
max_points: "3"
|
||||
@@ -1,7 +0,0 @@
|
||||
# This is the solution file for test_cases/q4/astar_0.test.
|
||||
# This solution is designed to support both right-to-left
|
||||
# and left-to-right implementations.
|
||||
solution: "Right Down Down"
|
||||
expanded_states: "A B D C G"
|
||||
rev_solution: "Right Down Down"
|
||||
rev_expanded_states: "A B D C G"
|
||||
@@ -1,39 +0,0 @@
|
||||
class: "GraphSearchTest"
|
||||
algorithm: "aStarSearch"
|
||||
|
||||
diagram: """
|
||||
C
|
||||
^
|
||||
| 2
|
||||
2 V 4
|
||||
*A <----> B -----> [H]
|
||||
|
|
||||
1.5 V 2.5
|
||||
G <----- D -----> E
|
||||
|
|
||||
2 |
|
||||
V
|
||||
[F]
|
||||
|
||||
A is the start state, F and H is the goal. Arrows mark possible state
|
||||
transitions. The number next to the arrow is the cost of that transition.
|
||||
"""
|
||||
# The following section specifies the search problem and the solution.
|
||||
# The graph is specified by first the set of start states, followed by
|
||||
# the set of goal states, and lastly by the state transitions which are
|
||||
# of the form:
|
||||
# <start state> <actions> <end state> <cost>
|
||||
graph: """
|
||||
start_state: A
|
||||
goal_states: H F
|
||||
A Right B 2.0
|
||||
B Right H 4.0
|
||||
B Down D 1.0
|
||||
B Up C 2.0
|
||||
B Left A 2.0
|
||||
C Down B 2.0
|
||||
D Right E 2.5
|
||||
D Down F 2.0
|
||||
D Left G 1.5
|
||||
"""
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
# This is the solution file for test_cases/q4/astar_1_graph_heuristic.test.
|
||||
# This solution is designed to support both right-to-left
|
||||
# and left-to-right implementations.
|
||||
solution: "0 0 2"
|
||||
expanded_states: "S A D C"
|
||||
rev_solution: "0 0 2"
|
||||
rev_expanded_states: "S A D C"
|
||||
@@ -1,54 +0,0 @@
|
||||
class: "GraphSearchTest"
|
||||
algorithm: "aStarSearch"
|
||||
|
||||
diagram: """
|
||||
2 3 2
|
||||
S --- A --- C ---> G
|
||||
| \ / ^
|
||||
3 | \ 5 / 1 /
|
||||
| \ / /
|
||||
B --- D -------/
|
||||
4 5
|
||||
|
||||
S is the start state, G is the goal. Arrows mark possible state
|
||||
transitions. The number next to the arrow is the cost of that transition.
|
||||
|
||||
The heuristic value of each state is:
|
||||
S 6.0
|
||||
A 2.5
|
||||
B 5.25
|
||||
C 1.125
|
||||
D 1.0625
|
||||
G 0
|
||||
"""
|
||||
# The following section specifies the search problem and the solution.
|
||||
# The graph is specified by first the set of start states, followed by
|
||||
# the set of goal states, and lastly by the state transitions which are
|
||||
# of the form:
|
||||
# <start state> <actions> <end state> <cost>
|
||||
graph: """
|
||||
start_state: S
|
||||
goal_states: G
|
||||
S 0 A 2.0
|
||||
S 1 B 3.0
|
||||
S 2 D 5.0
|
||||
A 0 C 3.0
|
||||
A 1 S 2.0
|
||||
B 0 D 4.0
|
||||
B 1 S 3.0
|
||||
C 0 A 3.0
|
||||
C 1 D 1.0
|
||||
C 2 G 2.0
|
||||
D 0 B 4.0
|
||||
D 1 C 1.0
|
||||
D 2 G 5.0
|
||||
D 3 S 5.0
|
||||
"""
|
||||
heuristic: """
|
||||
S 6.0
|
||||
A 2.5
|
||||
B 5.25
|
||||
C 1.125
|
||||
D 1.0625
|
||||
G 0
|
||||
"""
|
||||
@@ -1,22 +0,0 @@
|
||||
# This is the solution file for test_cases/q4/astar_2_manhattan.test.
|
||||
# This solution is designed to support both right-to-left
|
||||
# and left-to-right implementations.
|
||||
# Number of nodes expanded must be with a factor of 1.1 of the numbers below.
|
||||
solution: """
|
||||
West West West West West West West West West South South East East
|
||||
South South South West West West North West West West West South South
|
||||
South East East East East East East East South South South South South
|
||||
South South West West West West West West West West West West West
|
||||
West West West West West West South West West West West West West West
|
||||
West West
|
||||
"""
|
||||
expanded_nodes: "221"
|
||||
rev_solution: """
|
||||
West West West West West West West West West South South East East
|
||||
South South South West West West North West West West West South South
|
||||
South East East East East East East East South South South South South
|
||||
South South West West West West West West West West West West West
|
||||
West West West West West West South West West West West West West West
|
||||
West West
|
||||
"""
|
||||
rev_expanded_nodes: "221"
|
||||
@@ -1,27 +0,0 @@
|
||||
class: "PacmanSearchTest"
|
||||
algorithm: "aStarSearch"
|
||||
|
||||
# The following specifies the layout to be used
|
||||
layoutName: "mediumMaze"
|
||||
layout: """
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% P%
|
||||
% %%%%%%%%%%%%%%%%%%%%%%% %%%%%%%% %
|
||||
% %% % % %%%%%%% %% %
|
||||
% %% % % % % %%%% %%%%%%%%% %% %%%%%
|
||||
% %% % % % % %% %% %
|
||||
% %% % % % % % %%%% %%% %%%%%% %
|
||||
% % % % % % %% %%%%%%%% %
|
||||
% %% % % %%%%%%%% %% %% %%%%%
|
||||
% %% % %% %%%%%%%%% %% %
|
||||
% %%%%%% %%%%%%% %% %%%%%% %
|
||||
%%%%%% % %%%% %% % %
|
||||
% %%%%%% %%%%% % %% %% %%%%%
|
||||
% %%%%%% % %%%%% %% %
|
||||
% %%%%%% %%%%%%%%%%% %% %% %
|
||||
%%%%%%%%%% %%%%%% %
|
||||
%. %%%%%%%%%%%%%%%% %
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
"""
|
||||
leewayFactor: "1.1"
|
||||
heuristic: "manhattanHeuristic"
|
||||
@@ -1,7 +0,0 @@
|
||||
# This is the solution file for test_cases/q4/astar_3_goalAtDequeue.test.
|
||||
# This solution is designed to support both right-to-left
|
||||
# and left-to-right implementations.
|
||||
solution: "1:A->B 0:B->C 0:C->G"
|
||||
expanded_states: "A B C"
|
||||
rev_solution: "1:A->B 0:B->C 0:C->G"
|
||||
rev_expanded_states: "A B C"
|
||||
@@ -1,29 +0,0 @@
|
||||
class: "GraphSearchTest"
|
||||
algorithm: "aStarSearch"
|
||||
|
||||
diagram: """
|
||||
1 1 1
|
||||
*A ---> B ---> C ---> [G]
|
||||
| ^
|
||||
| 10 |
|
||||
\---------------------/
|
||||
|
||||
A is the start state, G is the goal. Arrows mark possible state
|
||||
transitions. The number next to the arrow is the cost of that transition.
|
||||
|
||||
If you fail this test case, you may be incorrectly testing if a node is a goal
|
||||
before adding it into the queue, instead of testing when you remove the node
|
||||
from the queue. See the algorithm pseudocode in lecture.
|
||||
"""
|
||||
|
||||
graph: """
|
||||
start_state: A
|
||||
goal_states: G
|
||||
A 0:A->G G 10.0
|
||||
A 1:A->B B 1.0
|
||||
B 0:B->C C 1.0
|
||||
C 0:C->G G 1.0
|
||||
"""
|
||||
# We only care about the solution, not the expansion order.
|
||||
exactExpansionOrder: "False"
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
# This is the solution file for test_cases/q4/graph_backtrack.test.
|
||||
# This solution is designed to support both right-to-left
|
||||
# and left-to-right implementations.
|
||||
solution: "1:A->C 0:C->G"
|
||||
expanded_states: "A B C D"
|
||||
rev_solution: "1:A->C 0:C->G"
|
||||
rev_expanded_states: "A B C D"
|
||||
@@ -1,32 +0,0 @@
|
||||
class: "GraphSearchTest"
|
||||
algorithm: "aStarSearch"
|
||||
|
||||
diagram: """
|
||||
B
|
||||
^
|
||||
|
|
||||
*A --> C --> G
|
||||
|
|
||||
V
|
||||
D
|
||||
|
||||
A is the start state, G is the goal. Arrows mark
|
||||
possible state transitions. This tests whether
|
||||
you extract the sequence of actions correctly even
|
||||
if your search backtracks. If you fail this, your
|
||||
nodes are not correctly tracking the sequences of
|
||||
actions required to reach them.
|
||||
"""
|
||||
# The following section specifies the search problem and the solution.
|
||||
# The graph is specified by first the set of start states, followed by
|
||||
# the set of goal states, and lastly by the state transitions which are
|
||||
# of the form:
|
||||
# <start state> <actions> <end state> <cost>
|
||||
graph: """
|
||||
start_state: A
|
||||
goal_states: G
|
||||
A 0:A->B B 1.0
|
||||
A 1:A->C C 2.0
|
||||
A 2:A->D D 4.0
|
||||
C 0:C->G G 8.0
|
||||
"""
|
||||
@@ -1,7 +0,0 @@
|
||||
# This is the solution file for test_cases/q4/graph_manypaths.test.
|
||||
# This solution is designed to support both right-to-left
|
||||
# and left-to-right implementations.
|
||||
solution: "1:A->C 0:C->D 1:D->F 0:F->G"
|
||||
expanded_states: "A B1 C B2 D E1 F E2"
|
||||
rev_solution: "1:A->C 0:C->D 1:D->F 0:F->G"
|
||||
rev_expanded_states: "A B1 C B2 D E1 F E2"
|
||||
@@ -1,39 +0,0 @@
|
||||
class: "GraphSearchTest"
|
||||
algorithm: "aStarSearch"
|
||||
|
||||
diagram: """
|
||||
B1 E1
|
||||
^ \ ^ \
|
||||
/ V / V
|
||||
*A --> C --> D --> F --> [G]
|
||||
\ ^ \ ^
|
||||
V / V /
|
||||
B2 E2
|
||||
|
||||
A is the start state, G is the goal. Arrows mark
|
||||
possible state transitions. This graph has multiple
|
||||
paths to the goal, where nodes with the same state
|
||||
are added to the fringe multiple times before they
|
||||
are expanded.
|
||||
"""
|
||||
# The following section specifies the search problem and the solution.
|
||||
# The graph is specified by first the set of start states, followed by
|
||||
# the set of goal states, and lastly by the state transitions which are
|
||||
# of the form:
|
||||
# <start state> <actions> <end state> <cost>
|
||||
graph: """
|
||||
start_state: A
|
||||
goal_states: G
|
||||
A 0:A->B1 B1 1.0
|
||||
A 1:A->C C 2.0
|
||||
A 2:A->B2 B2 4.0
|
||||
B1 0:B1->C C 8.0
|
||||
B2 0:B2->C C 16.0
|
||||
C 0:C->D D 32.0
|
||||
D 0:D->E1 E1 64.0
|
||||
D 1:D->F F 128.0
|
||||
D 2:D->E2 E2 256.0
|
||||
E1 0:E1->F F 512.0
|
||||
E2 0:E2->F F 1024.0
|
||||
F 0:F->G G 2048.0
|
||||
"""
|
||||
Reference in New Issue
Block a user