Professional Documents
Culture Documents
BTBFS
BTBFS
(2)
8 5 0
Step 03:
Open=[(3),(4),(5),(6),(7),(8),(9),(10)].
Closed=[(1),(2)].
Xét (3) chưa phải là trạng thái đích, đưa (3) vào Closed:
Open=[(4),(5),(6),(7),(8),(9),(10)].
Closed=[(1),(2),(3)]
Phát sinh các trạng thái của (3)
(3)
8 0 3
0 0 3 8 0 0 3 5 3 8 3 0
(17) (4)
0 5 3 3 5 0
Do (1), (7), (2), (4) đã nằm trong Closed nên bỏ qua (1), (7), (2), (4).
(14),(15),(16),(17) chưa nằm Open và Closed nên đưa (14),(15),(16),
(17) vào Open.
Open=[(5),(6),(7),(8),(9),(10),(11),(12),(13), (14),(15),(16),(17)].
Closed: Closed=[(1),(2),(3),(4)].
Step 05:
Open=[(5),(6),(7),(8),(9),(10),(11),(12),(13), (14),(15),(16),(17)].
Closed: Closed=[(1),(2),(3),(4)].
Xét (5) chưa phải là trạng thái đích, chưa tồn tại trong Open và Closed
nên đưa vào Closed: Closed=[(1),(2),(3),(4),(5)].
Phát sinh các con của (5):
(5)
0 0 0
(1) (7)
(11)
8 0 0 0 5 0 0 0 3
\
Do (1),(7),(11) đã tồn tại trong Closed nên bỏ qua.
Step 06:
Open=[(6),(7),(8),(9),(10),(11),(12),(13), (14),(15),(16),(17)].
Closed=[(1),(2),(3),(4),(5)].
Xét (6) chưa phải là trạng thái đích, chưa tồn tại trong Open và Closed,
đưa (6) vào Closed: Closed=[(1),(2),(3),(4),(5),(6)].
Phát sinh các con của (6):
(6)
5 0 3
8 0 3 5 5 3 0 5 3 8 0 0 5 3 0 5 0 0
3
Do (3), (8), (1) đã tồn tại trong closed nên không xét
(11)
Do (18),(19),(20) chưa tồn tại trong Open và Closed,chưa
phải là Goal nên đưa và Open. 0 0 3
Open=[(6),(7),(8),(9),(10),(11),(12),(13), (14),(15),(16),(17)].
Closed=[(1),(2),(3),(4),(5),(6)].
2.
a.Không gian trạng thái:
N: vị trí các ô số sau khi di chuyển
S:
1 2 3
5 4
7 8 6
GD:
1 2 3
4 5
6 7 8
Operators: các thao tác di chuyển ô lên, xuống, sang trái, phải.
b. Vẽ cây tìm kiếm BFS:
Step 01:
Open=[(1)], Closed=[ ].
Xét (1) chưa phải trạng thái đích, chưa tồn tại trong Open vào Closed,
đưa (1) vào Closed. Closed=[ (1)].
Phát sinh các con của (1):
(1)
1 2 3
5 4
7 8 6
(2) (3) (4)
1 2 3 1 2 1 2 3
5 4 5 4 3 5 4 6
7 8 6 7 8 6 7 8
Do (2), (3), (4) chưa phải là trạng thái đích, chưa tồn tại trong Open và
Closed nên đưa vào Open.
Open=[(2), (3), (4)], Closed=[(1) ].
Step 02:
Open=[(2), (3), (4)], Closed=[(1) ].
Xét trạng thái (2) chưa phải là trạng thái đích, chưa tồn tại trong Open và
Closed. Đưa (2) vào Closed.
Closed=[(1),(2) ].
Phát sinh các con của (2):
(2)
1 2 3
5 4
7 8 6
1 2
5 4 3
7 8 6
(8) (1)
1 2 1 2 3
5 4 3 5 4
7 8 6 7 8 6
Do (8) chưa phải trạng thái đích, chưa tồn tại trong Open và Closed nên
đưa vào Open, (1) đã tồn tại trong Closed nên bỏ qua.
Open=[(4), (5), (6), (7), (8)], Closed=[(1), (2),(3)].
Step 04:
Open=[(4), (5), (6), (7), (8)], Closed=[(1), (2),(3)].
Xét (4) chưa phải là trạng thái đích, đưa (4) vào Closed.
Closed=[(1), (2),(3), (4)].
Phát sinh các con của (4):
(4)
1 2 3
5 4 6
7 8
(9) (1)
1 2 3 1 2 3
5 4 6 5 4
7 8 7 8 6
Xét (9) chưa phải là trạng thái đích, chưa tồn tại trong Open và Closed,
(1) đã tồn tại trong Closed nên bỏ qua
Open=[(5), (6), (7), (8), (9)], Closed=[(1), (2),(3), (4)].
Step 05:
Open=[(5), (6), (7), (8), (9)], Closed=[(1), (2),(3), (4)].
Xét (5) chưa phải trạng thái đích, đưa (5) vào Closed.
Closed=[(1), (2),(3), (4), (5)].
Phát sinh các con của (5): (5)
1 2 3
5 4
7 8 6
(2)
(10) (11)
1 2 3 2 3 1 2 3
5 4 1 5 4 7 5 4
7 8 6 7 8 6 8 6
Do (2) đã tồn tại trong Closed nên bỏ qua, (10), (11) chưa phải là trạng
thái đích, chưa tồn tại trong Open và Closed nên đưa vào Open.
Open=[(6), (7), (8), (9), (10), (11)], Closed=[(1), (2),(3), (4), (5)].
Step 06:
Open=[(6), (7), (8), (9), (10), (11)], Closed=[(1), (2),(3), (4), (5)].
Xét (6) chưa phải trạng thái đích, đưa (6) vào Closed.
Closed=[(1), (2),(3), (4), (5), (6)].
Phát sinh các con của (6):
(6)
1 3
5 2 4
7 8 6
Do (12), (13) chưa phải trạng thái đích, chưa tồn tại trong Open và
Closed nên đưa vào Open, (2) đã tồn tại trong Closed nên bỏ qua.
Open=[(6), (7), (8), (9), (10), (11), (12), (13)]
Closed=[(1), (2),(3), (4), (5), (6)].