CÂY QUYẾT ĐỊNH
Day
D1
D2
D3
D4
D5
D6
D7
D8
D9
D10
D11
D12
D13
D14
Outlook
Sunny
Sunny
Overcast
Rain
Rain
Rain
Overcast
Sunny
Sunny
Rain
Sunny
Overcast
Overcast
Rain
Rain
Su
nn
y
Humidity
hight
hight
hight
hight
normal
normal
normal
hight
normal
normal
normal
hight
normal
hight
Wind
weak
strong
weak
weak
weak
strong
strong
weak
weak
weak
strong
strong
weak
strong
Playtennis
No
No
Yes
Yes
Yes
No
Yes
No
Yes
Yes
Yes
Yes
Yes
No
Giải
mild
Temperature
Outlook
st
rca
e
Ov
hot
Temperature
hot
hot
hot
mild
cool
cool
cool
mild
cool
mild
mild
mild
hot
mild
ngal
sntororm
humiddy
high
t
D1
D2
D3
D4
D8
D12
D14
D5
D6
D7
D9
D10
D11
D13
D4
D5
D6
D10
D14
D3
D7
D12
D13
ol
co
D1
D2
D8
D9
D11
D1
D2
D3
D13
wind
wea
k
D1
D3
D4
D5
D8
D9
D10
D13
D2
D6
D7
D11
D12
D14
1
D5
D6
D7
D9
D4
D8
D10
D11
D12
D14
KQ
Test
Outlook
Temperature
Humidity
Windy
Độ hỗn loạn
0,69
0,91
0,8
0,89
Cây quyết định
Bảng Sunny
Day
D1
D2
D8
D9
D11
Temperature
hot
hot
mild
cool
mild
Humidity
hight
hight
hight
normal
normal
Wind
weak
strong
weak
weak
strong
2
Playtennis
No
No
No
Yes
Yes
str
o
cool
no
rm
al
we
ak
ng
mild
hot
Temerature
KQ
Test
Temperature
Humidity
Windy
Độ hỗn loạn
0,4
0
0,95
Bảng Rain
Day
D4
D5
D6
D10
D14
Outlook
Rain
Rain
Rain
Rain
Rain
Temperature
mild
cool
cool
mild
mild
Humidity
hight
normal
normal
normal
hight
3
Wind
weak
weak
strong
weak
strong
Playtennis
Yes
Yes
No
Yes
No
coo
l
we
ak
ng
mild
normal
str
o
Temerature
KQ
Test
Temperature
Humidity
Windy
Độ hỗn loạn
0,95
0,95
0
Bảng Overcast bỏ qua vì trog 3 thuộc tính Tempearature, Humidity, windy =>phay tennis (Yes)
Cây quyết định
4
D4
D10
D14
D5
D6
No
Yes
Kết luận:
+ Nếu Outlook = Overcast thì quyết định Yes
+
Outlookt = Sunny và Humidity = hight thì quyết định phay tennis -> Yes
+
Outlook = Sunny và Humidity = normal thì quyết định play tennis -> No
+
Outlook = Rain và Windy = weak thì quyết định play tennis -> Yes
+
Outlook = Rain và Windy = strong thì quyết định play tennis -> No
5
THUẬT TOÁN TÌM KIẾM
• Thuật toán AT
1
Satrt
100
171
A
D
1
B
C
1
1
E
F
1
K
G
1
11
20
10
I
H
1
J
1
1
N
1
L
M
1
O
P
1
1
Q
1
R
1
T
S
1
U
1
V
6
Giải
(1) Mở đỉnh start đặt g(S)=0
(2) Đóng đình S mở A, B, C, D
(3)
(4)
(5)
(6)
(7)
g(A)=g(S) + g(S->A)=0 + 100 = 100
g(B)=g(S)+g(S->B) = 0 + 17 =17
g(C)=g(S)+g(S->C) = 0 + 1 =1
g(D)=g(S)+g(S->D) = 0 + 1 =1
Cả 2 g(C) và g (D) đều =1 (min)
Chọn ngẫu nhiên giữa C, D => chọn C
Đóng C mở G, H
g(A)=100
g(B)=17
g(D)=1 (min)
g(G)=11
g(H)=21
Đóng D mở I, J
g(A)=100
g(B)=17
g(H)=21
g(G)=11
g(I)=12
g(J)=2 (min)
Đóng J mở N
g(A)=100
g(B)=17
g(H)=21
g(G)=11
g(I)=12
g(N)=3 (min)
Đóng N, mở P
g(A)=100
g(B)=17
g(H)=21
g(G)=11
g(I)=12
g(P)=4 (min)
Đóng P, mở R
g(A)=100
g(B)=17
g(H)=21
g(G)=11
g(I)=12
g(R)=5 (min)
R là đích
Vậy đường đi là S -> 1 -> D -> 1 - >J -> 1 -> N -> 1 -> R
7
THUẬT TOÁN A*
2
Goal
2
a
8
b
2
c
5
1
2
3
9
e
d
1
Start
1
4
15
f
9
5
h
3
p
q
PQ={(Start,0)}
PQ={(p,1),(d,3),(e,9)}
PQ={{d,3),(e,9),(q,16)}
PQ={(b,4),(e,5),(c,11),(q,16)}
PQ={(a,6),(e,5),(c,11),(q,16)}
PQ={(h,6),(r,14),(c,11),(q,16)}
PQ={(q,10),(r,14),(c,11))
PQ={(r,13),(c,11)}
PQ={(f,18)}
PQ={(Goal, 23)}
8
r
THUẬT TOÁN TÔ MÀU
Đặt
1.
2.
3.
4.
5.
TQ
VN
Lào
Myanma
Thái Lan
6. Campuchia
7. Philippin
8. Malaysia
9. Brunay
10. Singarpore
11. Indonexia
9
1
1
2
3
4
5
6
7
8
9
10
11
2
1
1
1
1
3
1
1
1
1
4
1
1
1
1
1
5
1
1
1
6
7
8
9
10
11
1
1
1
1
1
1
1
1
1
1
1
1
Xác định bậc của các đình
Đỉnh
Bậc
1
3
2
3
3
5
4
3
5
4
6
3
7
0
8
4
9
1
10
1
11
1
1
21
2
21
4
21
5
31
6
21
7
0
8
4
9
1
10
1
11
1
21
21
3
0
1
0
21
21
21
0
01
01
01
0
2
0
112
0
112
21
21
0
0
1
0
01
01
01
112
0
012
112
0
0
01
01
01
0
2
0
3
0
1
0
3
0
2
0
2
0123
4
0
1
0
1
01
2
01
2
01
2
8
x
9
1
10
1
11
X
Tô màu
Đình
Bậc
Màu
Bậc
Màu
Bậc
Màu
Bậc
Màu
Bậc
Màu
Vậy: Tô màu 1: Philipppin, Lào, Brunay, Malaysia
Tô màu 2: TQ, Thái Lan, Brunay, Singapore, Indonexia
Tô màu 3: Việt Nam, Myanma
Tô màu 4: Campuchia
Thuật Toán Greendy (Tham lam)
I=1
1
1
2
x
3
x
4
x
5
1
6
x
10
7
1
I=2
I=3
I=4
1
1
1
2
2
2
x
3
3
2
2
2
1
1
1
x
x
4
1
1
1
2
2
2
1
1
1
1
1
1
1
1
1
THUẬT TOÁN ROBINSON, VƯƠNG HẠO
•
Thuật Robinson
Cho mệnh đề:
(đúng)
Biến đổi thành dạng chuẩn
+ Loại bỏ dấu mũi tên
•
Thuật giải Vương Hạo
Cho mệnh đề
Ta có:
Dạng chuẩn:
Tách dòng: (Chứng minh) (1)
(2)
Ta chuyển vế (2):
Tách dòng: (2.1) (chứng minh )
(2.2)
Chuyển vế (2.2):
• Nếu trong mệnh đề Giả thiết có dấu ˄, Kết luận có dấu v => thay bằng dấu “,”
• Nếu trong mệnh đề Giả thiết có dấu v, Kết luận có dấu ˄ => tách thành các dòng con
11
TÌM KIẾM VỚI THÔNG TIN HEURISTIC
h=8
h=0
a
Goal
h=5
c
h=11 b
h=8
e
d
h=4
f
h=4
Start
h
h=12
h=6
p
h=11
PQ={(Start,12)}
PQ={(e,4),(d,8),(p,11)}
PQ={(h,6),(r,6),(d,8),(p,11)}
PQ={(r,6),(d,8),(q,9),(p,11)}
PQ={(f,4),(d,8),(q,9),(p,11)}
PQ={(Goal,0)}
12
q
r
h=9
h=6
THUẬT TOÁN GTS2
Cho một đồ thị có ma trận chi phí như sau:
Trình bày và sử dụng thuật toán GTS2 để tìm hành trình tốt nhất, với P=4 (tại các đỉnh 1, 3, 4, 5)
Giải
Bước 1:
k=0
cost =
Best ={}
Bước 2:
Do k=0
Bước 3:
k=1
Gọi GTS1(1)
T1=
C1= 6+7+6+12+16+25=72
Bước 4: Do C1<cost => cost = 72 best T1
Bước 2: Do k=1
Bước 3:
k=2
Gọi GTS1(3)
T2=
C2= 5+6+12+6+38+16=83
Bước 4: Do C2>cost => cost = 72 best T1
Bước 2: Do k=2
Bước 3:
13
k=3
Gọi GTS1(4)
T3=
C3= 9+10+6+21+9+5=60
Bước 4: Do C3<cost => cost = 60 best T3
Bước 2: Do k=3
Bước 3:
k=4
Gọi GTS1(5)
T4=
C4= 97+6+12+24+16+14=79
Bước 4: Do C4>cost => cost = 60 best T3
Bước 2: Do k=4=p
Kết luận: Hành trình tốt nhất T3:
Với chi phí 60.
14
BÀI TOÁN DI CHUYỂN SỐ
Cách1:
Start
1
5
13
Goal
2
6
9
10
3
7
15
14
4
8
11
12
1
5
9
13
2
6
9
10
3
7
15
14
4
8
11
12
6
9
10
3
7
15
14
4 g(S1)=1
8 h(S1)=9
11 f(S1)=10
12
2
6
9
10
3
7
15
14
4 g(S2)=1
8 h(S2)=7
11 f(S2)=8 (min)
12
2
6
9
10
3
7
15
14
4
8
11
12
S0
1
5
13
Lần 1
S1
2
1
5
13
S2
1
5
13
Chọn S2
S2
1
5
13
15
2
6
10
14
3
7
11
15
4
8
12
Lần 2
S3
1
6
5
13
2
9
10
3
7
15
14
4 g(S3)=2
8 h(S3)=8
11 f(S3)=10
12
2
6
9
10
3
7
15
14
4 g(S4)=2
8 h(S4)=6
11 f(S4)=8 (min)
12
2
6
10
3
7
15
14
4 g(S5)=3
8 h(S5)=5
11 f(S5)=8 (min)
12
2
6
9
10
3
7
15
14
4 g(S6)=3
8 h(S6)=7
11 f(S6)=10
12
1
5
9
13
2
6
15
10
3
7
14
4 g(S7)=4
8 h(S7)=5
11 f(S7)=9
12
1
5
2
6
3
7
4 g(S8)=4
8 h(S8)=4
S4
1
5
13
Chọn S4
Lần 3
S5
1
5
9
13
S6
1
5
13
Chọn S5
Lần 4
S7
S8
16
9
13
10
15
14
11 f(S8)=8(min)
12
1
5
9
13
2
3
7
15
14
4 g(S9)=4
8 h(S9)=6
11 f(S9)=10
12
S9
6
10
Chọn S8
Lần 5
S10
1
5
9
13
2
6
10
14
3
7
15
4 g(S10)=5
8 h(S10)=3
11 f(S10)=8(min)
12
1
5
9
2
6
10
13
3
7
15
14
4 g(S11)=5
8 h(S11)=5
11 f(S11)=10
12
1
5
9
13
2
6
10
14
3
7
15
12
4 g(S12)=6
8 h(S12)=3
11 f(S12)=9
1
5
9
13
2
6
10
14
3
7
S11
Chọn S10
Lần 6
S12
S13
15
4 g(S13)=6
8 h(S13)=2
11 f(S13)=8 (min)
12
17
Chọn S13
Lần 7
S14
1
5
9
13
2
6
10
14
3
7
11
15
4 g(S14)=7
8 h(S14)=1
f(S14)=8 (min)
12
1
5
9
13
2
6
14
3
7
10
15
4 g(S15)=7
8 h(S15)=3
11 f(S15)=10
12
1
5
9
13
2
6
10
14
3
7
15
4 g(S16)=7
8 h(S16)=3
11 f(S16)=10
12
2
6
10
14
3
7
11
15
12
2
6
10
14
3
7
11
15
4 g(S17)=8
h(S17)=2
8 f(S17)=10
12
S15
S16
Chọn S14
S14
1
5
9
13
4
8
Lần 8
S17
1
5
9
13
18
S18
1
2
5
6
9
10
13
14
Vậy sau 8 bước đẩy ta có:
3
7
11
15
4 g(S18)=8
8 h(S18)=0
12 f(S18)=8 (min)
Cách
2:
Start
Goal
1
5
13
2
6
9
10
3
7
15
14
4
8
11
12
1
5
9
13
2
6
10
14
3
7
11
15
4
8
12
1
5
13
2
6
9
10
3
7
15
14
4
8
11
12
6
9
10
3
7
15
14
4 g(S1)=1
8 h(S1)=1+1+0+0+1+0+0+0+1+1+1+1+0+1+1=9
11 f(S1)=10
12
2
6
9
10
3
7
15
14
4 g(S2)=1
8 h(S2)=0+0+0+0+1+0+0+0+1+1+1+1+0+1+1=7
11 f(S2)=8 (min)
12
S0
Lần 1
S1
2
1
5
13
S2
1
5
13
Chọn S2
Lần 2
S3
19
1
6
5
13
2
9
10
3
7
15
14
4 g(S3)=2
8 h(S3)=0+0+0+0+1+1+0+0+1+1+1+1+0+1+1=8
11 f(S3)=10
12
2
6
9
10
3
7
15
14
4 g(S4)=2
8 h(S4)=0+0+0+0+0+0+0+0+1+1+1+1+0+1+1=6
11 f(S4)=8 (min)
12
2
6
10
3
7
15
14
4 g(S5)=3
8 h(S5)=0+0+0+0+0+0+0+0+0+1+1+1+0+1+1=5
11 f(S5)=8 (min)
12
2
6
9
10
3
7
15
14
4 g(S6)=3
8 h(S6)=0+0+0+0+0+0+0+0+1+1+1+1+1+1+1=7
11 f(S6)=10
12
2
6
15
10
3
7
14
4 g(S7)=4
8 h(S7)=0+0+0+0+0+0+0+0+0+1+1+1+0+1+1=5
11 f(S7)=9
12
3
7
15
14
4 g(S8)=4
8 h(S8)=0+0+0+0+0+0+0+0+0+0+1+1+0+1+1=4
11 f(S8)=8(min)
12
S4
1
5
13
Chọn S4
Lần 3
S5
1
5
9
13
S6
1
5
13
Chọn S5
Lần 4
S7
1
5
9
13
S8
1
5
9
13
2
6
10
20
S9
1
5
9
13
Chọn S8
Lần 5
S10
1
5
9
13
2
3
7
15
14
4 g(S9)=4
8 h(S9)=0+0+0+0+0+1+0+0+0+1+1+1+0+1+1=6
11 f(S9)=10
12
2
6
10
14
3
7
15
4 g(S10)=5
8 h(S10)=0+0+0+0+0+0+0+0+0+0+1+1+0+0+1=3
11 f(S10)=8(min)
12
2
6
10
13
3
7
15
14
4 g(S11)=5
8 h(S11)=0+0+0+0+0+0+0+0+0+0+1+1+1+1+1=5
11 f(S11)=10
12
2
6
10
14
3
7
15
12
4 g(S12)=6
8 h(S12)=0+0+0+0+0+0+0+0+0+0+1+1+0+0+1=3
11 f(S12)=9
2
6
10
14
3
7
4 g(S13)=6
8 h(S13)=0+0+0+0+0+0+0+0+0+0+1+1+0+0+0=2
11 f(S13)=8 (min)
12
6
10
S11
1
5
9
Chọn S10
Lần 6
S12
1
5
9
13
S13
1
5
9
13
Chọn S13
15
21
Lần 7
S14
1
5
9
13
2
6
10
14
3
7
11
15
4 g(S14)=7
8 h(S14)=0+0+0+0+0+0+0+0+0+0+0+1+0+0+0=1
f(S13)=8 (min)
12
2
6
3
7
10
15
4 g(S15)=7
8 h(S15)=0+0+0+0+0+0+0+0+0+1+1+1+0+0+0=3
11 f(S15)=10
12
3
S15
1
5
9
13
14
S16
1
5
9
13
Chọn S14
Lần 8
S17
1
5
9
13
2
6
10
14
7
15
4 g(S16)=7
8 h(S16)=0+0+0+0+0+0+1+0+0+0+1+1+0+0+0=3
11 f(S16)=10
12
2
6
10
14
3
7
11
15
4 g(S17)=8
h(S17)=0+0+0+0+0+0+0+1+0+0+0+1+0+0+0=2
8 f(S17)=10
12
S18
1
2
3
5
6
7
9
10
11
13
14
15
Vậy sau 8 bước đẩy ta có:
4 g(S18)=8
8 h(S18)=0+0+0+0+0+0+0+0+0+0+0+0+0+0+0=0
12 f(S18)=8 (min)
22