You are on page 1of 11

Câu hỏi ôn tập và cấu trúc đề thi

Học phần Trí tuệ nhân tạo

Câu 1(1 điểm). Khái niệm trí tuệ nhân tạo ? Ví dụ ứng dụng Trí tuệ nhận tao

Câu 2. (3 điểm) – Phần bài toán tìm kiếm trên không gian trạng thái

1. Phát biểu bài toán trong không gian trạng thái theo thuật toán
2. Viết giải thuật bằng phương pháp heuristic cho thuật toán (Greean, A*,..) và bài tập vận dụng
3. Trình bày Cây trò chơi; và giải thuật heuristic cho bài toán Tic – tac – toe

Câu 3. (3 điểm) – Phương pháp biểu diên tri thức

1. Biểu diễn tri thức là gì ? Các phương pháp biểu diễn tri thức
2. Trình bày các dạng chuẩn biểu diễn tri thức ?
3. Trình bày thuật toán Robison
4. Cây hợp giản đề tìm kiếm kết quả bài toán
5. Bài tập ứng dụng

Câu 4. (3 điểm) – Phương pháp học máy

1. Khái niệm và phương pháp học máy ?


2. Bài toán ứng dụng phương pháp học máy
3. Trình bày thuật toán Bayes hoặc thuật toán Cây quyết định ID3 và bài tập vận dụng
Cây Quyết Định (Decision Tree) - Trí tuệ nhân tạo (trituenhantao.io)

I.Câu hỏi ôn tập: Phần lý thuyết

1. Anh (Chị) hãy cho biết Trí tuệ nhân tạo là gì? Cho biết bài toán ứng dụng trí tuệ nhân tạo.

2.. Anh (Chị) hãy cho biết Tri thức là gì ? các phương pháp biểu diễn tri thức, cho ví dụ minh
họa.

3.Anh (Chị) hãy trình bày các dạng biểu diễn tri thức chuẩn hội (CNF), chuẩn tuyển(DNF) và
chuẩn Horn. Cho ví dụ minh họa.

4. Anh (Chị) hãy cho biết Học máy là gì? Nêu các phương pháp học máy và bài toán ứng
dụng học máy.

5.Trình bày giải thuật phân lớp Cây quyết định ID3

6. Trình bày mô hình học máy có giám sát

7.Trình bày giải thuật phân lớp Bayes

II. Phần bài tập không gian trạng thái (3 điểm)


1. Bài toán người đưa thư phát biểu như sau:
Có n thành phố ( được đánh số từ 1 đến n), một người đưa thư xuất phát từ thành phố s
đi đến thành phố g sao cho chi phí là nhỏ nhất. Biết rằng chi phí đi từ thành phố i đến thành
phố j là g(n) và h(i) là chi phí tại thành phố i .
a) Viết giải thuật heristic cài đặt bài toán trên dựa theo giải thuật A* .

b) Áp dụng thuật toán A* trên tìm đường đi từ s=A đến g=B có chi phí nhỏ nhất cho
người đưa thư Hình 1:

Hình 1. Đồ thị hành trình của người đưa thư

2. Bài toán Puzzle:

Có n2-1 số mang giá trị từ 1 tới n2-1 được sắp xếp vào một lưới các ô vuông kích thước
n*n. Mỗi số đó được gọi là một quân cờ và lưới ô đó được gọi là bàn cờ. Có một vị trí của bàn
cờ bỏ trống. Mỗi lần di chuyển quân, người chơi được phép chuyển một quân ở vị trí ô tiếp
giáp cạnh với ô trống vào ô trống.

Yêu cầu. Từ trạng thái ban đầu s (Sắp xếp quân cờ trang thái ban đầu của các quân cờ
trên bàn cờ) hãy thực hiện các bước đi hợp lệ ít nhất để được trạng thái kết thúc g ( trạng thái
đích cần đạt được). Biết rằng hàm đánh giá heuristic là tổng khoảng cách theo chiều ngang và
chiều dọc của các ô so với trạng thái đích..

c) Viết giải thuật heristic cài đặt bài toán trên dựa theo giải thuật A*
d) Áp dụng thuật toán A* trên cho trạng thái bài toán 8 Puzzle Hình 1.
Hình 1. Trạng thái bài toán 8 Puzzle

3. Bài toán người bán hàng phát biểu như sau:


Cho n thành phố (được đánh số từ 1 đến n), hãy tô màu các thành phố này sao cho
không có bất kỳ hai thành phố nào kề nhau được tô cùng một màu, và số màu được tô là ít
nhất có thể.

Dữ liệu được lưu trên một ma trận vuông c[i,j]. Nếu c[i,j]=1 thì hai thành phố i, j là kề
nhau; c[i,j]=0 thì hai thành phố i,j không kề nhau.

e) Viết giải thuật heristic cài đặt bài toán trên dựa theo giải thuật Tham lam (Greedy)
f) Áp dụng tô màu cho bản đồ các tỉnh phía Bắc Việt Nam Hình 1, sao cho cho hai tỉnh
giáp ranh không được tô cùng một màu.
Các tỉnh được đánh số trong bản đồ Hình 1 : 1 - Hà Nội; 2 – Hà Nam; 3- Nam Định; 4-
Thái Nguyên; 5 Bắc Cạn; 6 – Sơn La; 7 – Ninh Bình; 8 Điện Biên; 9 – Yên Bái

Hình 1. Bản đồ các tỉnh miền Bắc Việt Nam

4. Bài toán người bán hàng phát biểu như sau:


Có n thành phố ( được đánh số từ 1 đến n), một người bán hàng xuất phát từ một thành
phố bất kỳ, muốn đi qua tất cả các thành phố khác, mỗi thành phố một lần rồi quay về thành
phố xuất phát sao cho chi phí là nhỏ nhất. Biết rằng chi phí đi từ thành phố i đến thành phố j
là c[i,j].
g) Viết giải thuật heristic cài đặt bài toán trên dựa theo giải thuật Tham lam (Greedy)

h) Áp dụng tìm đường đi có chi phí nhỏ nhất cho người bán hàng xuất phát từ thành phố i
với ma trận chi phí sau:
[ ]

[ ]

III. Bài tập phần Biểu diễn tri thúc


1. Cho cơ sở tri thức gồm các câu đúng sau:

Ông Ba nuôi một con chó


Ông Ba hoặc ông An đã giết con mèo Bibi

Mọi người nuôi động vật đều yêu quý động vật
Ai yêu động vật cũng không giết động vật
Chó, mèo đều là động vật

a) Hãy biểu diễn tri thức cho phát biểu trên; sau đó chuyển về dạng hội của các tuyển.
b) Dùng luật phân giải đề trả lời câu hỏi “Ai đã giết Bibi?”

c) Chuyển các câu trong Cơ sở tri thúc về dạng các câu Horn. Dùng phương pháp suy
diễn để trả lời câu hỏi (b).

2. Cho cơ sở tri thức gồm các câu đúng sau:


Cầu thủ nào có thể lực tốt và nhanh nhẹn thì đều đá bóng hay

Cầu thủ nào siêng tập luyện và có thể hình tốt thì có thể lục tốt
Cầu thủ nào siêng tập luyện thì nhanh nhẹn

Quang Hải không có thể hình tốt nhưng siêng luyện tập.
d) Hãy biểu diễn tri thức cho phát biểu trên; sau đó chuyển về dạng hội của các tuyển.

e) Dùng luật phân giải đề trả lời câu hỏi “Quang Hải có đá bóng hay không ?”
f) Chuyển các câu trong Cơ sở tri thúc về dạng các câu Horn. Dùng phương pháp suy
diễn để trả lời câu hỏi (b).
3.. Cho cơ sở tri thức gồm các câu đúng sau:

Sinh viên nào giỏi Tiếng Anh và Ngô ngữ lập trình thì Lập trình giỏi
Sinh viên nào giỏi Logic và giỏi tiếng Anh thì Lập trình giỏi

Người nào có trí nhớ tốt hoặc thông minh thì đều giỏi tiếng Anh
Người nào thông minh thì giỏi Logic
Nam không có trí nhớ tốt nhưng lại thông minh.
g) Hãy biểu diễn tri thức cho phát biểu trên; sau đó chuyển về dạng hội của các tuyển.

h) Dùng luật phân giải đề trả lời câu hỏi “Nam có lập trình giỏi hay không ?”
i) Chuyển các câu trong Cơ sở tri thúc về dạng các câu Horn. Dùng phương pháp suy
diễn để trả lời câu hỏi (b).
4.. Cho cơ sở tri thức gồm các câu đúng sau:

Sinh viên nào giỏi Toán và Tiếng Anh đều giỏi Lập trình
Sinh viên nào thông mình hoặc kiên trì đều giỏi tiếng Anh

Sinh Viên nào thông minh thì đều giỏi toán


Lan thông minh nhưng không kiên trì

j) Hãy biểu diễn tri thức cho phát biểu trên; sau đó chuyển về dạng hội của các tuyển.
k) Dùng luật phân giải đề trả lời câu hỏi “Lan có lập trình giỏi hay không ?”

l) Chuyển các câu trong Cơ sở tri thúc về dạng các câu Horn. Dùng phương pháp suy
diễn để trả lời câu hỏi (b).

IV. Bài tập Phần học máy ( 2 điểm)


1. Áp dụng giải thuật phân lớp Bayes để dự báo “Một sinh viên trẻ với thu nhập (Income)
trung bình có đánh giá tín dụng (Credit_Rank) bình thường có thể mua được máy tính
hay không ?”

Bảng 1. Dữ liệu thu thập


ID Age Income Student Cerdit_Rank Buy_Computer
1 Young High No Fair No
2 Young High No excellent No
3 Medium High No Fair Yes
4 Old Medium No Fair Yes
5 Old Low Yes Fair Yes
6 Old Low Yes excellent No
7 Medium Low Yes excellent Yes
8 Young Medium No Fair No
9 Young Low Yes Fair Yes
10 Old Medium Yes Fair Yes
11 Young Medium Yes excellent Yes
12 Young Medium No excellent Yes
13 Young High Yes Fair Yes
14 Old Medium No excellent No
15 Old Low No Fair No

2. Áp dụng giải thuật phân lớp Cây quyết định ID3 để trả lời câu hỏi “ Anh ta có chơi
tennis hay không? dựa trên các yếu tố về thời tiết: outlook=Rain,
humidity=Normsl, và wind=weak”
Bảng 1. Dữ liệu thu thập
Day Outlook Temperature Humidity Wind Play_Tennis
1 Sunny Hot High Weak No
2 Sunny Hot High Strong No
3 Overcast Hot High Weak Yes
4 Rain Mild High Weak Yes
5 Rain Cool Normal Weak Yes
6 Rain Cool Normal Strong No
7 Overcast Cool Normal Strong Yes
8 Sunny Mild High Weak No
9 Sunny Cool Normal Weak Yes
10 Rain Mild Normal Weak Yes
11 Sunny Mild Normal Strong Yes
12 Overcast Mild High Strong Yes
13 Sunny Hot High Strong No
14 Overcast Cool Normal Weak Yes
15 Sunny Mild Normal Weak Yes

Một số bài tham khảo

Bài toán 1 – Người bán hàng theo thuật toán Tham lam ( Green)

a) Phát biểu bài toán:

Có n thành phố ( được đánh số từ 1 đến n), một người bán hàng xuất phát từ một thành phố,
muốn đi qua các thành phố khác, mỗi thành phố một lần rồi quay về thành phố xuất phát. Giả
thiết biết được chi phí đi từ thành phố I đến thành phố j là c[I,j]..
b) Thuât toán hueristic
c) Bài tập vận dụng tìm đường đi cho người bán hàng xuất phát từ thành phố vi (i=1,3,4 ,5) cho
ma trân chi phí sau:

[ ]

[ ]

Bài toán 2. Bài toán tô màu

a) Phát biểu bài toán


Cho n thành phố, hãy tô màu các thành phố này sao cho không có bất kỳ hai thành phố nào kề
nhau được tô cùng một màu, và số màu được tô là ít nhất có thể.
Dữ liệu được lưu trên một ma trận vuông c[I,j]. Nếu c[I,j]=1 thì hai thành phố i, j là kề nhau;
c[i,j]=0 thì hai thành phố i,j không kề nhau.
Thuật giải tô màu tham lam (Greedy)
Dùng màu thứ nhất tô cho tất cả các đỉnh của đồ thị mà có thể tô được, sau đó dùng màu thứ 2 tô
cho tất cả các đỉnh còn lại của đồ thị và lặp lại cho đến khi hết các đỉnh đồ thị.
b) Giải thuật heuristic
c) Bài tập vận dụng
+ Bài toán xếp lich
Tại một của hàng sách, mới nhập về 12 quyển sách thuộc các thể loại sau:
Truyện cười : A, C, D, G
Âm nhạc: B, H, K,
Lịch sử: E, J, L
Khoa học: F, I
Hãy sắp xếp những quyển sách này vào kệ sao cho số kệ sử dụng là ít nhất mà tuân theo các yêu cầu
sau:
- Các quyển sách cùng loại không được để chung một kệ
- Quyển sách A không được để chung với sách khoa học.
- Quyển L không được để chung với sách âm nhạc

Giải
Bước 1. Lập ma trận kề
A C D G B H K E J L F I
A 0 1 1 1 1 1
C 1 0 1 1
D 1 1 0 1
G 1 1 1 0
B 0 1 1
C[i,j]= H 1 0 1
K
E 0 1 1
J 1 0 1
L 1 1 1 1 1 0
F 1 0 1
I 1 1 0

Bước 2. Tô màu theo nguyên lý Tham lam


Đỉnh A C D G B H K E J L F I
Màu 1 1 1 1
Màu 2 2 2 2 2
Màu 3 3 3 3
Màu4 4 4

Bước 3. Kết luận 12 quyển sách trên được xếp vào 4 kệ


Kệ 1. Gồm các quyển sách: A, B, E
Kệ 2. Gồm các quyển sách: C, H, J, F
Kệ 3. Gồm các quyển sách: D, K, I
Kệ 4. Gồm các quyển sách: G, L.

Bài tập: Cho bản đồ các tỉnh miền Bắc Việt Nam như sau. Hãy tô màu cho các tỉnh này, sao cho hai
tỉnh giáp ranh không được tô cùng một màu:
1- Hà Nội; 2 – Hà Nam; 3- Nam Định; 4- Thái Nguyên; 5 Bắc Cạn; 6 – Sơn La; 7 – Ninh Bình; 8
Điện Biên; 9 – Yên Bái

a) Mô tả thuật toán
Giả sử n là một trạng thái đạt tới ( Có đường đi từ trạng thái ban đầu n0 tới n). Ta xác định hàm đánh
giá: f(n) = g(n) + h(n)
 G(n) là chi phí từ nút gốc n0 tới nút hiện tại n
 H(n) chi phí ước lượng từ nút hiện tại n tới đích
 F(n) chi phí tổng thể ước lượng của đường đi qua nút hiện tại n đến đích
Một ước lượng heuristic h(n) được xem là chấp nhận được nếu với mọi nút n: 0 ≤h(n)≤h*(n)
Trong đó h*(n) là chi phí thật ( thực tế) để đi từ nút n đến đích
b) Cài đặt thuật toán
OPEN:
 tập chứa các trọng thái đã được sinh ra nhưng chưa được xét.
 Là một hàng đợi ưu tiên mà trong đó phần tử có động ưu tiên cao nhất là phần
tử tốt nhất.
CLOSE:
 Tập chứa trạng thái đã xét đến
 Được lưu trữ để kiểm tra trạng thái mới tạo ra đã tồn tại hay chưa?
Ni: Trạng thái đang xét trong Open
 Tính giá trị f,g,h – xác định độ tốt ni
 Trạng thái cha ni (parents(ni)): cho biết trạng thái dẫn đến ni
 Danh sách các trạng thái tiếp theo của ni: lưu trữ trạng thái kế tiếp nk của ni,
sao cho chi phí đến nk thông qua ni từ trạng thái ban đầu là tốt nhất ( nhỏ
nhất)
Thuật toán A*
FUNCTION Astar(n0,ngoal)
Begin
1. Khởi tạo
OPEN = {n0};
CLOSE= {};
vi=n0; // đỉnh đang xét
g(n0)=h(n0)=f(n0)=0;

2. Lặp lại các bước cho đến khi gặp ngoal


While (vi<>ngoal)
Begin
If (OPEN=null) break;
Else
Begin
Daxet(vi)=true;
Chọn vi trong OPEN sao cho f(vi)  min(f(vi))
Lấy vi ra khỏi OPEN và đưa vào CLOSE
If (vi=ngoal)
begin
in kết quả;
break;
end;
else
begin
nk=ke(vi); // Tạo danh sách cạnh kề đỉnh đang xét
g(nk)= g(vi) + cost(vi,nk); h(nk);
f(nk)= g(nk) + h(nk);
end;
parents(nk)=vi;
// Nếu nk chưa xét thi đưa vào OPEN
if (daxet(nk) =false) OPEN= OPEN  {nk}

End;
End;
End;

Bài tập mẫu Biểu diễn tri thúc

Khai báo các vị từ


 Rear(x, y): x nuôi y
 Kill(x, y): x giết y
 Animal(x): x là động vật
 AnimalLover(x): x là người yêu động vật
 Dog(x): x là loài chó
 Cat(x): x là loài mèo

Biểu diễn tri thức của bài toán


 Ông Ba nuôi một con chó
Dog(D) ᴧ Rear(Ba, D)
 Ông Ba hoặc ông An đã giết con mèo Bibi
Cat(Bibi) ᴧ (Kill(Ba, Bibi) v Kill(An, Bibi))
 Mọi người nuôi chó đều yêu quý động vật
∀x (∀y Rear(x, y) ᴧ Dog(y) → AnimalLover(x))
 Ai yêu quý động vật cũng ko giết động vật
∀x (AnimalLover(x) → ∀y (Animal(y) → ¬Kill(x, y)))
 Chó mèo đều là động vật
(Dog(x) → Animal(x)) ᴧ (Cat(y) → Animal(y))

Muốn chứng minh “Ông An giết con mèo Bibi”: thêm


¬Kill(An, Bibi) vào tập tri thức
 Chuẩn hóa và tách:
1. Dog(D)
2. Rear(Ba, D)
3. Cat(Bibi)
4. Kill(Ba, Bibi) v Kill(An, Bibi)
5. ¬Rear(x, y) v ¬Dog(y) v AnimalLover(x)
6. ¬AnimalLover(x) v ¬Animal(y) v ¬Kill(x, y)
7. ¬Dog(x) v Animal(x)
8. ¬Cat(x) v Animal(x)
9. ¬Kill(An, Bibi)

Quá trình chứng minh (hợp giải):


10. Kill(Ba, Bibi) – Res(4, 9): hợp giải 4 và 9
11. ¬AnimalLover(Ba) v ¬Animal(Bibi)
• Res (10, 6 | x = Ba, y = Bibi): hợp giải 10 và 6, trong dữ kiện 6,
thế x = Ba, y = Bibi
12. ¬AnimalLover(Ba) v ¬Cat(Bibi)
• Res (11, 8 | x = Bibi): hợp giải 11 và 8, trong 8 thế x = Bibi
13. ¬AnimalLover(Ba) – Res (12, 3): hợp giải 12 và 3
14. ¬Rear(Ba,y) v ¬Dog(y)
• Res (13, 5 | x = Ba): hợp giải 13 và 5, trong 5 thế x = Ba
15. ¬Dog(D)
• Res (14 | y = D, 2): hợp giải 14 và 2, trong 14 thế y = D
16.  – Res (15, 1): hợp giải 15 và 1, xuất hiện vô lý

Muốn chứng minh “Ông Ba giết con mèo Bibi”: thêm


¬Kill(Ba, Bibi) vào tập tri thức
 Phương pháp hợp giải không dẫn tới câu rỗng → không chứng
minh được
 Muốn chứng minh “Ông Ba không giết con mèo Bibi”:
thêm Kill(Ba, Bibi) vào tập tri thức
 Chứng minh được bằng phương pháp hợp giải

You might also like