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*(n­1)/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ì (n­1) 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: Tic­tac­toe (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 (Breadth­first search)

Hiện thực: FIFO queue.

27

Breadth­first search

Hiện thực: FIFO queue.

28

Breadth­first search

Hiện thực: FIFO queue.

29

Breadth­first search

Hiện thực: FIFO queue.

30

Tìm kiếm sâu (Depth­first search)

Hiện thực: LIFO queue

31

Depth­first search

Hiện thực: LIFO queue

32

Depth­first search

Hiện thực: LIFO queue

33

Depth­first search

Hiện thực: LIFO queue

34

Depth­first search

Hiện thực: LIFO queue

35

Depth­first search

Hiện thực: LIFO queue

36

Depth­first search

Hiện thực: LIFO queue

37

Depth­first search

Hiện thực: LIFO queue

38

Depth­first search

Hiện thực: LIFO queue

39

Depth­first search

Hiện thực: LIFO queue

40

Depth­first search

Hiện thực: LIFO queue

41

Depth­first 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?) ể ọ ư ế ấ