1
Mục đích của trí tuệ nhân tạo:
Theo Winton: mục đích chính của trí tuệ nhân
tạo là làm cho các máy tính điện tử thông minh
hơn, có ích hơn và giúp khám phá các quy luật
về khả năng hoạt động trí tuệ của con người. Từ
đây sẽ tác động trực tiếp làm cho con người
thông minh hơn, hoạt động có hiệu quả hơn.
2
Mô hình “củ hành”:
q
ûi
i a
G
u y e át v aán ñeà
H
e
H e u r i s t i c
ä
B i e åu d i e ãn t r i t h ö ùc
c
t o b o R
h
u
y
L a äp l u a än
C o ân g c u ï t h ö ïc h i e än
e ân g i a
s
e
m
a
G
M a ùy : N e w r a l
Nhaän d
a
ïn
g
N g o ân n g ö õ: P r o l o g
3
Vai trò trí tuệ nhân tạo:
Ö Ùn g d u ïn g
I n t e l l i g e n c e S y s t e m
K y õ t h u a ät
K n o w l e d g e E n g i n e e r i n g ( C o ân g n g h e ä v e à t r i t h ö ùc )
K h o a h o ïc
A r t i f i c i a l I n t e l l i g e n c e ( T r í t u e ä n h a ân t a ïo )
4
Các định nghĩa
Trí tuệ nhân tạo: trí tuệ nhân tạo có thể được định
nghĩa như một hệ thống máy móc có khả năng thực
hiện những hành động của con người được xem là
thông minh.
Thông minh: sự nghiên cứu, sự thu thập thông tin
tiêu biểu như: cố gắng học những ý tưởng xử lý của bộ
não con người, bao gồm cả việc nghiên cứu sự vật có ý
tưởng, có ý nghĩa, có sự chú ý, nhận dạng, hiểu vấn đề
5
và sáng tạo ra vấn đề.
Các định nghĩa (tt)
Nhân tạo: Có nghĩa là cố gắng sử dụng máy tính để xây dựng những hệ thống nhân tạo bắt chước đặc tính của việc thu thập thông tin một cách thông minh.
Ghi Nhôù Tính Toaùn Tìm Kieám Luaän Suy
Maùy tính hieän nay chæ môùi laøm ñöôïc phaàn naøy 6
DỮ LIỆU = Chữ cái, con số, hình ảnh riêng rẽ, rời
rạc, không mang một ý nghĩa nào.
THÔNG TIN = Các dữ liệu được sắp xếp theo một
quan hệ nào đó.
TRI THỨC = mối quan hệ giữa các dữ liệu được
xác định một cách tường minh.
7
VÍ DỤ :
D LI U :
Ữ Ệ 1, 1, 3, 5, 2, 7, 11, ...
THÔNG TIN : 1, 1, 2, 3, 5, 8, 13, 21, 34, ....
TRI TH CỨ : Un = Un-1 + Un-2.
8
TRI THỨC
g n ợ ư
g n ợ ư
l
ố S
THÔNG TIN
t u ừ r t
ộ Đ
9
DỮ LIỆU
Một số thuật toán:
1.Phương pháp giải quyết vấn đề theo hướng xác định trực tiếp
lời giải:
Áp dụng một công thức cụ thể để tính ra lời giải trong mọi trường hợp
được sử dụng. Đây là phương pháp tốt nhất (theo nghĩa các công thức
tìm ra và được chứng minh sẽ cho lời giải trong mọi trường hợp.) và hữu
hiệu nhất.
Ví dụ: Lập chương trình tính S = 1 + 2 + 3 + … + n (n ˛
N)
Write(‘Nhập n=‘);
Readln(n);
Write(‘ S = ‘, n*(n1)/2);
10
Một số thuật toán (tt)
2. Phương pháp “Vét cạn”:
Giả sử chúng ta giải bài toán P trên miền D, " x˛ D
Bước 1: " x˛ D, P(x) đúng: in kết quả và dừng (success). Bước 2: D := D \ {x}: Loại trường hợp này nếu sai. Bước 3: Kiểm tra D „
{}
+ Đúng : Goto bước 1. + Sai: Dừng (fail).
Lưu ý: Đối với phương pháp này, việc giới hạn D càng nhỏ giải càng nhanh. Ví dụ: Tìm các số có ba chữ số thỏa: abc=a3 +b3
+c3
a £
9
Ta có D: 1 £ b, c £ 0 £ 9 For a := 1 To 9 Do
For b := 0 To 9 Do For c:=1 To 9 Do If (100*a+10*b+c = a*a*a + b*b*b + c*c*c) then Writeln(a,b,c);
11
Một số thuật toán (tt)
3. Phương pháp đệ qui:
Định nghĩa kiểu đệ qui:
Ví dụ: Định nghĩa số tự nhiên:
1 là số tự nhiên n là số tự nhiên thì (n1) cũng là số tự nhiên. Hàm đệ qui: Hàm f được gọi là đệ qui nếu:
f(x) = f(x, f(x’))
12
Một số thuật toán (tt)
4. Phương pháp ngẫu nhiên (phương pháp
Monte – Carlo):
Bài toán: Tính diện tích của hình M bất kỳ. + Có thể bao hình M nội tiếp trong một hình
vuông có cạnh là 1 đơn vị.
+ Phát ngẫu nhiên N điểm vào trong hình
vuông.
+ Có Nm điểm nằm trong hình M.
13
Một số thuật toán (tt)
ủ ớ
ệ ượ
V i ớ n đ l n, di n tích c tính (x p x ) hình M đ ỉ ấ nh sau: ư
S
M hình
=
MhìnhS
»
N M N
S
hình
vuoâng
14
Một số thuật toán (tt)
y
Ví dụ: Tính p : diện tích hình tròn S0 = p R2 với R = 1/2 (cid:222) p = 4S0
(cid:222)
S=p 0 2 R
x(x0,y0)
O
x
15
Một số thuật toán (tt)
Function Pi:Real; Var
m, i : Integer; x, y : Real;
Begin
{Phát ngẫu nhiên N điểm}
m := 0; For i := 1 To N Do Begin
{x ˛ {y ˛
(0,1)} (0,1)}
x := random; y := random; If (x2 + y2) £
1 Then m := m + 1;
End; Pi := 4*m/N;
End;
16
Các tính chất của một thuật toán:
Khi xây dựng một thuật toán và chương trình
tương ứng để giải một bài toán cần phải phân tích:
+ Tính đúng đắn của thuật toán: phải dùng
công cụ toán học để chứng minh là đúng.
+ Tính đơn giản của thuật toán: dễ hiểu, dễ
lập trình, dễ hiệu chỉnh.
+ Tính tối ưu của thuật toán (nếu có nhiều
thuật toán).
17
Các tính chất của một thuật toán:
Lưu ý: Thời gian và bộ nhớ là 2 đại lượng tỷ lệ nghịch, nên
nhiều khi tính càng đơn giản càng làm chậm chương trình.
Thời gian thực hiện một thuật toán phụ thuộc rất
nhiều yếu tố:
18
+ Kích thước của dữ liệu. + Kiểu lệnh + Tốc độ xử lý của máy. + Ngôn ngữ lập trình. + Trình biên dịch.
Kỹ thuật tìm kiếm
M t s bài toán
ộ ố
Bài toán mê cung:
19
Kỹ thuật tìm kiếm (tt)
Cực tiểu hóa giá thành: Người đưa thư cần xác định hành trình đi ngắn nhất sao cho mỗi thành phố đi đến đúng một lần và quay về thành phố xuất phát.
Trò chơi: Tictactoe (cờ caro). Bài toán tô màu: Cho một bản đồ, tô màu cho mỗi nước trên bản đồ sao cho hai nước láng giềng (có chung đường biên giới) có hai màu khác nhau.
Vấn đề : số màu cần dùng tối đa là bao nhiêu? 1976 người ta đã dùng máy tính để chứng minh được là
chỉ cần dùng tối đa là 4 màu.
20
Kỹ thuật tìm kiếm (tt)
Bài toán taci:
21
Biểu diễn bài toán:
Giaû thuyeát
Keát luaän
………… fi
S0 fi
S1 fi
S2 fi
Sn
START Traïng thaùi baét ñaàu
GOAL Traïng thaùi keát thuùc
22
Biểu diễn bài toán (tt)
ề
ể
ấ
i d ng sau: t ườ
ế
ộ ạ ườ ế ấ
ướ
H u h t các bài toán đ u có th phát bi u ể ầ ế m t tr ng thái xu t phát d ừ ộ ạ ướ ạ ng d n đ n m t tr ng thái k t hãy tìm đ ế ẫ ng đi này là thúc mong mu n. Vi c tìm đ ệ ố m t ngh thu t đ gi i quy t v n đ , bao ộ ậ ể ả ề ệ c sau: g m các b ồ Chọn được không gian tìm kiếm thích hợp. Tiến hành tìm kiếm có hệ thống và có hiệu quả
Sử dụng triệt để các nguồn tri thức có liên quan trong quá trình tìm kiếm tương ứng với miền đại lượng cụ thể.
23
trong không gian tìm kiếm.
Biểu diễn bài toán (tt)
Không gian tìm kiếm của một vấn đề giải
trên máy tính thường được biểu diễn bởi một đồ thị hoặc một dạng đặc biệt của đồ thị (cây). Sau khi bài toán được biểu diễn dưới dạng đồ thị (hoặc cây) thì:
1. Mỗi đỉnh là một giai đoạn của quá trình giải
(hay là trạng thái).
2. Mỗi cung là một tác động biến đổi quá trình
từ giai đoạn này sang giai đoạn khác.
24
Biểu diễn bài toán (tt)
3
2
3
1
2
4
8
1
4
8
7
7
5
6
5
6
S T A R T
G O A L
25
2
3
1
4
8
7
5
6
8
3
2
2
8
3
3
2
2
3
1
4
1
4
8
1
8
4
7
7
7
6
5
5
6
6
5
1
4
1
3
2
2
3
4
4
8
1
8
7
5
6
7
6
5
8
7
3
1
2
1
2
3
4
7
8
8
4
7
5
6
6
5
G O A L
26
Tìm kiếm rộng (Breadthfirst search)
Hiện thực: FIFO queue.
27
Breadthfirst search
Hiện thực: FIFO queue.
28
Breadthfirst search
Hiện thực: FIFO queue.
29
Breadthfirst search
Hiện thực: FIFO queue.
30
Tìm kiếm sâu (Depthfirst search)
Hiện thực: LIFO queue
31
Depthfirst search
Hiện thực: LIFO queue
32
Depthfirst search
Hiện thực: LIFO queue
33
Depthfirst search
Hiện thực: LIFO queue
34
Depthfirst search
Hiện thực: LIFO queue
35
Depthfirst search
Hiện thực: LIFO queue
36
Depthfirst search
Hiện thực: LIFO queue
37
Depthfirst search
Hiện thực: LIFO queue
38
Depthfirst search
Hiện thực: LIFO queue
39
Depthfirst search
Hiện thực: LIFO queue
40
Depthfirst search
Hiện thực: LIFO queue
41
Depthfirst search
Hiện thực: LIFO queue
42
Tìm kiếm sâu dần: (Iterative deepening search)
43
Kết hợp của tìm kiếm rộng và tìm kiếm sâu trên cơ sở cho biết mức sâu n rồi tìm kiếm rộng ứng mới mức sâu đó.
Iterative deepening search l =0
44
Iterative deepening search l =1
45
Iterative deepening search l =2
46
Iterative deepening search l =3
47
ả ộ
c c a quá
các ch n l a có th ể ọ ự ỗ ướ ủ i bài toán. Là m t cây mô t th c hi n trong m i b ệ ự trình gi ả
Toàn bộ cây tìm kiếm được tượng trưng bằng một hình tam giác. Vị trí bắt đầu ở đỉnh, vị trí kết thúc ở đáy
48
R ngộ
Sâu
49
R ngộ
Sâu
ng ỉ ế ướ tâm đ n
Ch quan tâm đ n h đi đã ch n.ọ fi t c t ấ ế ả t n b nh ớ ộ ố
ể Quan ng đi h ướ đ l u tr ữ ể ư Không c n quay lui ầ
50
ể quay lui Có th đi vào các ngõ, nhánh c t (không th đi ụ ế ượ ữ fi ti p đ c n a)
Sâu d nầ
ng h p đi quá sâu mà g p nhánh ợ ặ ế ườ
H n ch tr ạ c tụ
Ít t n b nh h n. ố ộ ớ ơ
ng ậ ượ ư ủ ộ ươ
T n d ng đ ể ụ pháp tìm theo chi u r ng. c u đi m “r ng” c a ph ề ộ
Đ sâu gi i h n bao nhiêu là đ ? ớ ạ ủ
51
ộ
Ch t nhánh ặ
Lo i b h i gi i. ạ ỏ ướ ng tìm ki m ch c ch n không d n đ n l ắ ẫ ế ờ ả ế ắ
Tìm ki m v i tri th c b sung ứ ổ ớ ế
i ướ ể ọ ọ
Ư gi i nhanh h n, tr ng có tri n v ng nh t, hy v ng s đ n l ấ ng h p x u nh t quay v vét c n. u tiên đi theo h ả ơ ẽ ế ờ ạ ợ ấ ề ấ ườ
52
(nh th nào là tri n v ng nh t?) ể ọ ư ế ấ