Tải bản đầy đủ (.pdf) (171 trang)

Nhập môn trí tuệ nhân tạo

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.17 MB, 171 trang )

H C VI N CƠNG NGH B U CHÍNH VI N THƠNG

NH P MƠN
TRÍ TU

NHÂN T O

(Dùng cho sinh viên h đào t o đ i h c t xa)
L u hành n i b

HÀ N I - 2007


H C VI N CƠNG NGH B U CHÍNH VI N THƠNG

NH P MƠN
TRÍ TU
Biên so n :

NHÂN T O
PGS.TS. NGUY N QUANG HOAN


L I NĨI

U

Trí tu nhân t o (hay AI: Artificial Intelligence), là n l c tìm hi u nh ng y u t trí tu .
Lý do khác đ nghiên c u l nh v c này là cách đ ta t tìm hi u b n thân chúng ta. Không gi ng
tri t h c và tâm lý h c, hai khoa h c liên quan đ n trí tu , còn AI c g ng thi t l p các các y u t
trí tu c ng nh tìm bi t v chúng. Lý do khác đ nghiên c u AI là đ t o ra các th c th thơng


minh giúp ích cho chúng ta. AI có nhi u s n ph m quan tr ng và đáng l u ý, th m chí ngay t lúc
s n ph m m i đ c hình thành. M c dù không d báo đ c t ng lai, nh ng rõ ràng máy tính
đi n t v i đ thơng minh nh t đ nh đã có nh h ng l n t i cu c s ng ngày nay và t ng lai phát
tri n c a v n minh nhân lo i.
Trong các tr ng đ i h c, cao đ ng, Trí tu nhân t o đã tr thành m t môn h c chuyên
ngành c a sinh viên các ngành Công ngh Thông tin.
đáp ng k p th i cho đào t o t xa, H c
vi n Cơng ngh B u chính Vi n thông biên so n tài li u này cho sinh viên, đ c biêt h ào t o t
xa h c t p. Trong quá trình biên so n, chúng tơi có tham kh o các tài li u c a i h c Bách khoa
Hà n i [1] giáo trình g n g i v tính cơng ngh v i H c vi n. M t s giáo trình khác c a i h c
Qu c gia thành ph H Chí Minh [], tài li u trên m ng và các tài li u n c ngoài b ng ti ng Anh
[] c ng đ c tham kh o và gi i thi u đ sinh viên đào t o t xa đ c thêm.
Tài li u này nh m h ng d n và gi i thi u nh ng ki n th c c b n, các khái ni m, đ nh
ngh a tóm t t. M t s thu t ng đ c chú gi i b ng ti ng Anh đ h c viên đ c b ng ti ng Anh d
dàng, tránh hi u nh m khi chuy n sang ti ng Vi t.
Tài li u g m các ch

ng sau:

- Ch

ng 1 : Khoa h c Trí tu nhân t o: t ng quan

- Ch

ng 2 : Các ph

- Ch

ng 3 : Bi u di n tri th c và suy di n


- Ch

ng 4 : X lý ngôn ng t nhiên

- Ch

ng 5 : Các k thu t trí tu nhân t o hi n đ i

ng pháp gi i quy t v n đ

Còn nhi u v n đ khác ch a đ c p đ c trong ph m vi tài li u này.
tìm hi u thêm sau khi đã có nh ng ki n th c c b n này.

ngh các b n đ c

Nhi u c g ng đ c p nh t ki n th c nh ng th i gian, đi u ki n, kh n ng có h n nên tài
li u ch c ch n cịn nhi u thi u sót. Chúng tơi mong nh n đ c nhi u ý ki n đóng góp đ tài li u
đ c hồn thi n h n cho các l n tái b n sau.
TÁC GI


2


CH

NG 1: KHOA H C TRÍ TU NHÂN T O: T NG QUAN

H c xong ph n này sinh viên có th n m đ


c:

1. Ý ngh a, m c đích mơn h c; l ch s hình thành và phát tri . Các ti n đ c b n c a Trí
tu nhân t o (TTNT)
2. Các khái ni m c b n, đ nh ngh a c a TTNT.
3. Các l nh v c nghiên c u và ng d ng c b n. Nh ng v n đè ch a đ
TTNT

1.1 L CH S

c gi i quy t trong

HÌNH THÀNH VÀ PHÁT TRI N

Trong ph n này chúng tơi n l c gi i thích t i sao chúng tơi coi trí tu nhân t o là m t b
môn đáng nghiên c u nh t; và n l c c a chúng tôi nh m gi i thích trí tu nhân t o là gì. ây có
ph i là b mơn h p d n khi nghiên c u khơng.
Trí tu nhân t o hay AI (Artificial Intelligence) là m t trong nh ng ngành tiên ti n nh t.
Nó chính th c đ c b t đ u vào n m 1956, m c dù vi c này đã b t đ u t 5 n m tr c. Cùng v i
ngành di truy n h c hi n đ i, đây là môn h c đ c nhi u nhà khoa h c đánh giá: “là l nh v c tơi
thích nghiên c u nh t trong s nh ng môn tôi mu n theo đu i”. M t sinh viên v t lý đã có lý khi
nói r ng: t t c các ý t ng hay đã đ c Galileo, Newton, Einstein tìm r i; m t s ý t ng khác
l i m t r t nhi u n m nghiên c u tr c khi có vai trị th c ti n. AI v n là v n đ đ tr ng t th i
Einstein.
Qua h n 2000 n m, các tri t gia đã c g ng đ hi u cách nhìn, h c, nh và l p lu n đ c
hình thành nh th nào. S ki n nh ng chi c máy tính có th s d ng đ c vào đ u nh ng n m
50 c a th k XX đã làm các nhà tri th c thay đ i h ng suy ngh . R t nhi u ng i cho r ng:
“nh ng trí tu siêu đi n t ” m i này đã cho ta d đoán đ c ti m n ng c a trí tu . AI th c s khó
h n r t nhi u so v i ban đ u m i ng i ngh .

Hi n nay AI đã chuy n h ng sang nhi u l nh v c nh , t các l nh v c có m c đích chung
chung nh nh n th c, l p lu n, t duy logic đ n nh ng công vi c c th nh đánh c , cung c p
đ nh lý toán h c, làm th và chu n đoán b nh. Th ng, các nhà khoa h c trong các l nh v c khác
c ng nghiêng v trí tu nhân t o. Trong l nh v c này h th y các ph ng ti n làm vi c, v n t
v ng đ c h th ng hoá, t đ ng hoá: các nhi m v trí tu là cơng vi c mà h s có th c ng hi n
c đ i. ây th c s là m t ngành r t ph bi n.

1.1.1. T duy nh con ng

i: ph

ng pháp nh n th c

N u mu n m t ch ng trình máy tính có kh n ng suy ngh nh con ng i, chúng ta ph i
tìm hi u con ng i đã t duy nh th nào? Có m t s tiêu chí xác đ nh nh th nào là suy ngh
ki u con ng i. Chúng ta c n xem công vi c bên trong c a b óc con ng i. Có hai ph ng pháp
đ th c hi n đi u này: th nh t là thông qua t duy bên trong - ph i n m b t đ c suy ngh c a
con ng i khi làm vi c - th hai thơng qua thí nghi m tâm lý. Khi chúng ta đã có đ c đ y đ lý
thuy t v t duy thì chúng ta có th ch ng trình hố nó trên máy tính. N u đ u vào/ra c a
ch ng trình và th i gian làm vi c phù h p v i con ng i thì nh ng ch ng trình t đ ng này có
th ho t đ ng theo con ng i. Ví d , Newell và Simon đã phát tri n ph ng pháp gi i quy t v n
đ GPS- General Problem Solver (Newell and Simon 1961). ây là ph ng pháp đ i l p v i các

3


nghiên c u đ ng th i (nh Wang (1960)) ông quan tâm đ n vi c có đ
đ n, không quan tâm đ n vi c con ng i ph i làm nh th nào.

c nh ng gi i pháp đúng


1.1.2. Các qui t c t duy
Tri t gia Aristote là ng i đ u tiên h th ng hố “t duy chính xác”. Phép tam đo n lu n c a
ông đ a ra k t lu n đúng n u c ti n đ chính và ti n đ th là đúng. Ch ng h n: “n u Sô-crát là
con ng i, m i con ng i đ u ch t, nh v y Sô-crát s ch t”.
Môn t duy logic phát tri n vào cu i th k XIX đ u XX. N m 1965 các ch ng trình cung
c p cho chúng ta đ nh ng thông tin, chi ti t v m t v n đ trong t duy logic và tìm ra ph ng
pháp gi i. N u v n còn v n đ ch a có cách gi i thì ch ng trình s khơng ng ng tìm ki m cách
gi i. Môn logic truy n th ng trong AI là đi u mong m i đ có đ c m t ch ng trình mơ t h
th ng trí tu .

1.1.3. Kh i ngu n c a AI (1943 - 1956)
Nh ng công vi c đ u tiên c a AI đ c Warren McCulioch và Walter Pitts (1943) th c hi n.
H đã nghiên c u ba c s lí thuy t: tri t h c c b n và ch c n ng c a các n ron th n kinh; phân
tích v các m nh đ logic là c a Russell và whitehead và cu i cùng là thuy t d đoán c a
Turning. H đã đ ra mơ hình n ron nhân t o, trong đó m i n ron đ c đ c tr ng b i hai tr ng
thái “b t”, “t t”. McCulloch và Pitts c ng đã phát hi n: m ng n ron có kh n ng h c. Donald
Hebb (1949) s d ng lu t h c đ n gi n t ng tr ng cho vi c truy n thông tin gi a các gi a các n
ron.
u nh ng n m 1950, Claude Shannon (1950) và Alan Turning (1953) đã vi t ch ng trình
đánh c theo cách mà Von Newman sáng ch ra máy tính. Cùng lúc đó, hai sinh viên khoa toán
tr ng đ i h c Princeton, Marvin Minsky và Dean Edmond đã xây d ng h th ng máy tính n ron
đ u tiên vào n m 1951 đ c g i là SNARC. Nó s d ng kho ng 3000 bóng đi n t chân khơng và
thi t b c khí t đ ng tính giá tr th ng d t chùm B-24 đ mơ ph ng m ng v i 40 n ron.
Nhóm th c s c a Minsky nghi ng r ng li u đây có đ c coi là m t ph n c a toán h c, nh ng
Neuman m t thành viên c a nhóm đã cho bi t r ng “n u bây gi nó khơng ph i là m t ph n c a
tốn h c thì m t ngày nào đó nó s là nh th ”. Th t m a mai, sau này Minsky l i chính là ng i
ch ng minh h c thuy t này và đã bác b nhi u h th ng nghiên c u v m ng n ron trong su t
nh ng n m 1970.


Lịng say mê và tơn tr ng l n ngay t r t s m (1952-1969)
N m 1958 McCarthy đã đ nh ngh a ngôn ng b c cao Lisp, và tr thành ngôn ng l p
trình cho AI. Lisp là ngơn ng l p trình lâu đ i th hai mà hi n nay v n s d ng. V i Lisp,
McCarthy đã có ph ng ti n ông c n, nh ng đ đáp ng đ c yêu c u và tài nguyên tính tốn là
m t v n đ quan tr ng. C ng vào n m 1958, McCarthy xu t b n bài báo “Các ch ng trình v i
cách nhìn nh n chung”. Trong bài báo này, ông bàn v ch ng trình t v n, m t ch ng trình gi
đ nh đ c coi là h th ng AI hoàn thi n đ u tiên. Gi ng h c thuy t logic và cách ch ng minh các
đ nh lý hình h c, ch ng trình c a McCarthy đ c thi t k nh m s d ng ki n th c đ nghiên c u
cách gi i quy t v n đ . Không nh các ch ng trình khác, ch ng trình này là m t b ph n ki n
th c c a toàn b th gi i quan. Ông ch ra r ng làm th nào đ nh ng đi u r t đ n gi n l i làm
cho ch ng trình có th khái quát đ c m t k ho ch đ n sân bay và lên máy bay. Ch ng trình
này c ng đ c thi t k đ nó có th ch p nh n vài chân lý m i v quá trình th c hi n bình th ng.
Chính vì v y, ch ng trình này có đ c nh ng kh n ng th c hi n trong các ch ng trình m i mà
khơng c n l p trình l i.

4


N m 1963, McCarthy đã có các nghiên c u v s d ng logic đ xây d ng ch ng trình
ng i t v Ch ng trình này đ c phát tri n do khám phá c a Robinson v ph ng pháp c i
cách. Nh ng công vi c đ u tiên t o ra nh ng h th ng m i c a McCulloch và Pitts làm cho chúng
phát tri n. Các ph ng pháp nghiên c u c a Hebb đã đ c Widrow ng h (Widrow và Hoff,
1960; Widrow, 1962). H đã đ t tên mang n ron là m ng c a ông, và c ng đ c Frank
Rosenblatt (1962) c ng c . Rosenblatt ch ng minh r ng thu t toán mà ông nghiên c u có th
thêm vào nh ng kh n ng c a nh n th c phù h p v i b t c d li u đ u vào nào.
Nh ng nhà nghiên c u AI c ng đã d đốn v nh ng thành cơng sau này. Herbert Simon đã
phát bi u (1957): Không ph i m c đích c a tơi là làm các b n ng c nhiên, nh ng cách đ n gi n
nh t đ có th khái quát là hi n nay trên th gi i, máy móc có th suy ngh , có th h c và sáng t o
đ c. H n n a, kh n ng c a nó là làm vi c v i ti n đ cao- trong t ng lai rõ ràng – cho đ n khi
v n đ chúng ta có th gi i đ c, s cùng t n t i v i t duy c a con ng i có th áp d ng đ c.

N m 1958, ơng d đốn trong 10 n m n a, m t máy tính có th vô đ ch trong môn c vua, và các
đ nh lý toán h c m i s đ c máy ch ng minh.

1.2. CÁC TI N

C

B N C A TTNT

Toàn c nh v ph ng pháp gi i quy t v n đ hình thành trong th p k đ u nghiên c u AI là
m c đích nghiên c u n l c liên k t các b c l p lu n c b n v i nhau đ tìm ra ph ng pháp
hồn thi n. Các ph ng pháp này đ c coi là các ph ng pháp kém vì s d ng thơng tin kém v
l nh v c.
i v i nhi u l nh v c ph c t p, thì các ph ng pháp th c hi n l i r t kém. Cách duy
nh t quanh v n đ là s d ng ki n th c phù h p h n đ có b c l p r ng h n và đ gi i quy t các
tr ng h p n y sinh nh t đ nh trong các l nh v c nh chuyên môn. Chúng ta ch c s nói r ng gi i
quy t các v n đ khó thì h u nh ph i bi t tr c đáp án.
Ch ng trình DENDRAL (Buchanan, 1969) là m t ví d s m ti p c n ph ng pháp này.
Nó đ c phát tri n t i Stanford, đây chính là n i Ed Feigenbaum (m t sinh viên chính qui c a
Herbert Simon). Bruce Buchanan (m t tri t gia chuy n sang làm nghiên c u máy tính) và Joshua
Lederberg (nhà nghiên c u di truy n đo t gi i Nobel) đã h p nhau l i đ cùng suy lu n, gi i quy t
v n đ có c u trúc phân t t nh ng thông tin do máy đo quang ph cung c p. D li u đ a vào
ch ng trình g m các c u trúc c b n c a phân t (Ví d C6H12NO2), và r t nhi u d i quang ph
đ a ra hàng lo t đo n phân t khác nhau khái quát chung khi nó cùng m t lúc đ a ra các dịng
đi n t . Ví d d i quang ph ch a đ ng m t đi m nh n t i m=15 t ng ng v i m t d i c a đo n
methyl (CH3).
Phiên b n s khai c a ch ng trình khái quát đ c tồn b c u trúc có th bên trong b ng
phân t và sau đó ph ng đốn b ng cách quan sát m i d i quang ph , so sánh nó v i quang ph
th c t . Nh chúng ta ngh thì đi u này tr nên nan gi i đ i v i các phân t có kích th c đáng
k . Các nhà nghiên c u DENDRAL khuyên các nhà phân tích d c khoa và cho th y r ng h

nghiên c u b ng cách tìm ki m các ph n bên trên c a đi m nh n trong d i quang ph , đi u đó
đ a ra g i ý chung v các c u trúc nh bên trong phân t . Ví d , qui lu t sau đây đ c s d ng đ
nh n ra m t nhóm nh xeton (C=0)
N u có hai đ nh x1, x2 nh sau:
(a) x1+x2 = M+28 (M là kh i l

ng c a phân t )

(b) x1-28 là m t đ nh
(c) x2-28 là m t đ nh
(d) Có ít nh t m t đ nh x1 ho c x2 là đ nh cao. Sau đó có m t nhóm nh xeton.

5


Khi nh n ra phân t ch a m t c u trúc nh đ c bi t, s l ng thành ph n tham gia có th b
gi m xu ng nhanh chóng. Nhóm DENDRAL k t lu n r ng h th ng m i là r t m nh b i vì: tồn
b ki n th c có liên quan đ n gi i quy t cơng vi c đã đ c phác th o s qua t c u trúc chung
trong [thành ph n quang ph đốn tr c] đ có nh ng c u trúc đ c bi t
T m quan tr ng c a DENDRAL là nó là h th ng c m nh n ki n th c thành công đ u tiên.
Các chuyên gia c a l nh v c này đi sâu t s l ng l n các qui lu t có m c đích đ c bi t. Các h
th ng sau này c ng không k t h p l i thành ch đ chính c a ph ng pháp chuyên gia c a
McCarthy - ph n hoàn toàn tách bi t c a ki n th c (trong c u trúc c a qui lu t) và thành ph n l p
lu n.
V i bài h c này, Feigebaum và các thành viên khác t i Stanford b t đ u l p d án ch ng
trình Heuristic, đ đ u t m r ng vào các ph ng pháp m i c a h chuyên gia nh m áp d ng vào
các l nh v c khác nhau. Nh ng n l c chính sau đó là chu n đoán y h c. Feigenbaum, Buchanan
và Edward Shortlife đã phát tri n h chuyên gia MYCIN đ ch n đoán b nh nhi m trùng máu.
V i kho ng 450 lu t, h chuyên gia MYCIN có th th c hi n t t h n nhi u bác s m i. Nó có hai
s khác bi t c b n v i h chuyên gia DENDRAL. Th nh t: không gi ng nh các lu t

DENDRAL, không m t m u lý thuy t chung nào t n t i mà có th suy lu n t các lu t c a h
MYCIN. Các lu t ph i có câu ch t v n c a chun gia, ng i có nhi m v tìm chúng t kinh
nghi m. Th hai: các lu t ph n ánh m i liên quan không ch c ch n v i ki n th c y h c. MYCIN
k t h p v i h vi phân c a bi n s đ c coi là các nhân t phù h p t t ( m i lúc) v i ph ng
pháp mà các bác s ti p c n v i các tri u ch ng trong quá trình chu n đốn.
Cách ti p c n khác đ chu n đoán y h c c ng đ c nghiên c u. T i tr ng đ i h c Rutger,
nh ng máy tính trong ngành sinh hố c a Sual Amarel b t đ u tham v ng nh m c g ng chu n
đoán b nh t t d a trên ki n th c đ c bi u đ t rõ ràng c a nh ng chi c máy phân tích q trình
b nh t t. Trong khi đó, m t s nhóm l n h n t i MIT và trung tâm y t c a Anh đang ti p t c
ph ng pháp chu n đoán và đi u tr d a trên h c thuy t có tính kh thi và th c t . M c đích c a
h là xây d ng các h th ng có th đ a ra các ph ng pháp ch n đoán y h c. V y h c, ph ng
pháp Stanford s d ng các qui lu t do các bác s cung c p ngay t đ u đã đ c ch ng minh là ph
bi n h n. Nh ng h chuyên gia PROSPECTOR (Duda 1979) đ c công b cho m i ng i b ng
cách gi i thi u thi t b khoan th m qu ng

M t vài ngôn ng d a vào logic nh ngôn ng Prolog ph bi n
châu Âu, và
PLANNER M . Các ngôn ng khác, theo sau các ý t ng c a Minsky (1975) ch p nh n
ph ng pháp ti p c n c u trúc, thu th p các ch ng c v đ i t ng và các lo i s ki n.

1.3. CÁC KHÁI NI M C

B N

1.3.1. Trí tu nhân t o(AI) là gì?
Chúng ta có th nói: “Tuy t th t, đây là m t ch ng trình đ c th c hi n b ng nh ng suy
di n thơng minh, vì th c n ph i ti p t c và m i ng i c n b sung cho nó”. Nh ng theo s phát
tri n c a khoa h c cho th y: s có ích n u ta đi đúng h ng. nh ngh a v AI đã có t i tám cu n
sách đ c p. Nh ng đ nh ngh a đó đ a ra trên hai nh n đ nh chính:
- Th nh t: quan tâm ch y u đ n quá trình t duy và l p lu n

- Th hai: v n đ ít đ

c quan tâm h n, đó là ho t đ ng.

M t h th ng đ c coi là h p lý n u nh nó th c hi n đúng. i u này s đ a ngành AI đ n
4 m c tiêu.(xem B ng 1.1).
Chúng ta s đi vào chi ti t c a t ng h

6

ng theo các phát bi u sau đây:


“Nh ng n

m i đây l

l c thú v

“Vi c nghiên c u c

s

trí tu

t o ra máy tính... nh ng máy móc thơng qua s d ng máy vi tính”
có trí tu , hi u theo c nghiã đ y
đ

l n


ngh a

bóng”.

(Haugeland, 1985)

(Charniak and McDermott, 1985)
“Nghiên c u máy tính l m cho
máy tính có kh

n ng c m nh n,

đ ng hoá c a] các ho t l p lu n v l m vi c”.
đ ng đã giúp chúng ta k t h p
“[s

t

nh ng t

duy c a con ng i v i

công vi c c ng nh

quy t đ nh,

(Winston, 1992)

gi i quy t v n đ , h c t p...”

(Bellman 1978)
“Ngh thu t sáng t o máy móc l

“Trong l nh v c nghiên c u l đ

th c hi n ch c n ng hình th nh t

tìm ra cách gi i thích v

duy khi con ng

đ

i l m vi c”

đ t

c nh ng h nh đ ng có t duy

(Kurzweil, trong “l nh v c x lý tính tốn”.
1990) (Schalkoff, 1990)
"Vi c nghiên c u l m cách n o đ
b t máy tính l m nh ng vi c m

“Trong ng nh khoa h c máy tính
có liên quan đ n s t đ ng hoá

cùng m t lúc con ng i có th l m nh ng ho t đ ng mang tính trí
tu ”.
t t h n.”

(Luger and

(Rich and Knight, 1991)

Stubbefield, 1993)

Hình 1.1 Nh ng đ nh ngh a v AI đ
H th ng t duy nh con ng

i

H th ng ho t đ ng nh con ng
Ho t đ ng nh con ng

i: ph

c chia thành 4 nhóm:

H th ng t duy có l p lu n
i

H th ng ho t đ ng có l p lu n

ng pháp tr c nghi m Turning

Ph ng pháp tr c nghi m Turning đ c Alan Turning (1950) đ a ra . ây là ph ng pháp
nh m đ nh ngh a m t ho t đ ng g i là thông minh. Turning cho r ng: ho t đ ng trí tu là kh
n ng có đ c nh con ng i trong nh ng công vi c c n tri th c, đ đ đánh l a ng i th m v n
mình. Nói khái qt, ph ng pháp tr c nghi m c a ông là: máy tính s b m t ng i h i thơng
qua giao ti p gõ ch qua vô tuy n. K t thúc thí nghi m s là lúc ng i h i khơng cịn câu nào đ

h i ho c c ng i và máy đ u hoàn thành.
l p ch ng trình cho máy tính qua đ c q trình
ki m tra c n hồn thành nhi u vi c. Máy tính c n có các kh n ng sau:
• X lý ngơn ng t nhiên đ giao ti p t t b ng ti ng Anh (ho c ngôn ng khác)

7


• Bi u di n tri th c, l u tr thơng tin đ

c cung c p tr

• T đ ng l p lu n đ s d ng thông tin đã đ
m i.
• Máy h c: đ thích nghi v i mơi tr

c ho c trong q trình th m v n.

c l u nh m tr l i câu h i và phác th o k t lu n

ng m i, ki m tra và ch p nh n nh ng m u m i.


i v i AI, khơng c n có s c g ng cao m i qua đ c quá trình ki m tra c a Turning. Khi
các ch ng trình AI giao ti p tr c ti p v i con ng i thì vi c ho t đ ng đ c gi ng nh ng i
là v n đ thi t y u. Quá trình trình di n và lý gi i nh ng h th ng nh th có th ho c không
c n d a vào con ng i.

1.3.2. Tri th c là gì?
Tri th c là s hi u bi t b ng lý thuy t hay th c t vè m t ch đ hay l nh v c. Tri th c là

t ng c a nh ng cái đang bi t hi n nay; tri th c là s c m nh. Nh ng ng i có tri th t t là nh ng
chuyên gia (expert).
So v i ch ng trình truy n th ng (đ c c u t o t hai “ch t li u” c b n là d li u và
thu t toán), ch ng trình trí tu nhân t o đ c c u t o t hai thành ph n là c s tri th c
(knowledge base) và đ ng c suy di n (inference engine).

1.3.3. C s tri th c (Knowledge Base: KB)
nh ngh a:
C s tri th c là t p h p các tri th c liên quan đ n v n đ mà ch ng trình quan tâm gi i
quy t. C s tri th c ch a các ki n th c đ c s d ng đ gi i quy t các v n đ (bài tốn) trong trí
tu nhân tao.

1.3.4. H c s tri th c
Trong h c s tri th c ch a hai ch c n ng tách bi t nhau, tr ng h p đ n gian g m hai
kh i: kh i tri th c hay còn g i là c s tri th c; kh i đi u khi n hay cịn g i là đơng c suy di n.
V i các h th ng ph c t p, b n thân đ ng c suy di n c ng có th là m t h c s tri th c ch a
các siêu tri th c (tri th c v các tri th c). Hình d i đây mơ t c u trúc ch ng trình truy n th ng
(bên trái) và c u trúc ch ng trình trí tu nhân t o (bên ph i).

D

LI U

THU T
TOÁN

ng c suy di n: là ph

8


D

LI U

C

S

TRI TH C

NG C SUY
DI N
ng pháp v n d ng tri th c trong c s tri th c đ gi i quy t v n đ .


1.4 CÁC L NH V C NGHIÊN C U VÀ

NG D NG C

B N

1.4.1 Lý thuy t gi i bài tốn và suy di n thơng minh
Lý thuy t gi i bài toán cho phép vi t các ch ng trình gi i câu đ , ch i các trị ch i thơng
qua các suy lu n mang tính ng i. H th ng gi i bài toán GPS do Newel, Shaw và Simon đ a ra
r i đ c hoàn thi n n m 1969 là m t m c đáng ghi nh . Tr c n m 1980, Buchanal và Luckham
c ng hoàn thành h th ng ch ng minh đ nh lý. Ngoài ra các h th ng h i đáp thông minh nh S ,
QA2, QA3,.. cho phép l u tr và x lý kh i l ng l n các thơng tin. Ch ng trình c a McCarthy
v các ph ng án hành đ ng có kh n ng cho các l i khuyên.

1.4.2 Lý thuy t tìm ki m may r i

Vi c tìm ki m l i gi i c ng là vi c bài tốn. Lý thuy t tìm ki m nh may r i g m các
ph ng pháp và k thu t tìm ki m v i s h tr c a thơng tin ph đ gi i bài tốn m t cách hi u
qu . Cơng trình đáng k v lý thuy t này là c a G.Pearl vào n m 1984.

1.4.3 Các ngơn ng v Trí Tu Nhân T o
x lý các tri th c ng i ta không th ch s d ng các ngôn ng l p trình dùng cho các x
lý d li u s mà c n có các ngơn ng khác. Các ngơn ng chuyên d ng này cho phép l u tr và
x lý các thơng tin kí hi u. Dùng các ngôn ng này c ng là cách đ tr l i câu h i “ th nào”
(what). r i t i câu h i “làm sao v y”(how). M t s ngôn ng đ c nhi u ng i bi t đ n là:


Các ngơn ng



Ngơn ng m nh h n nh PLANNER, PROLOG. Ngay trong m t ngôn ng c ng có nhi u
th h v i nh ng phát tri n đáng k .

IPL.V, LISP.

1.4.4 Lý thuy t th hi n tri th c và h chuyên gia
Theo quan đi m c a nhi u chuyên gia công ngh thơng tin, trí tu nhân t o là khoa h c v
th hi n tri th c và s d ng tri th c. Ng i ta nh n xét v ph ng pháp th hi n tri th c nh sau:
c đ dùng th hi n tri th c trong ch



L




M ng ng ngh a, logíc v t , khung, m ng là các ph
thơng d ng.



Dùng khung đ th hi n tri th c ch c ch n là ph
n m g n đây.

ng trình
ng pháp th hi n tri th c m t cách

ng pháp có nhi u h a h n trong các

Vi c g n li n cách th hi n và s d ng tri th c là c s hình thành h chuyên gia. V y nên
ph i k t h p các quá trình nghiên c u các quy lu t, thi t k và xây d ng h chuyên gia. Tuy nhiên
cho đên nay, đa s các h chuyên gia m i thu c l nh v c y h c.

1.4.5 Lý thuy t nh n d ng và x lý ti ng nói
Giai đo n phát tri n đ u c a trí tu nhân t o g n li n v i lý thuy t nh n d ng. Các ph
pháp nh n d ng chính đ c gi i thi u g m:


Nh n d ng dùng tâm lý h c



Nh n d ng hình h c




Nh n d ng theo ph



Dùng máy nh n d ng

ng

ng pháp hàm th .

9


ng d ng c a ph ng pháp này trong vi c nh n d ng trong ch vi t, âm thanh, hình nh…
cho đ n ngay đã tr nên quen thu c. Ng i ta đã có h th ng x lý hình nh ba chi u, h th ng
t ng h p ti ng nói.
Do kh i l ng đ s c a tri th c v lý thuy t nh n d ng. các ch
đ n các ph ng pháp nh n d ng đ c.

1.4.6 Ng

ng trình sau ch a đ c p

i máy

Cu i nh ng n m 70, ng i máy trong công nghi p đã đ t đ c nhi u ti n b “ Khoa h c
ng i máy là n i k t thông minh c a nh n th c v i hành đ ng”. Ng i máy có b c m nh n và
các c ch ho t đ ng đ c n i ghép theo s đi u khi n thông minh. Khoa h c v c h c và trí tu
nhân t o đ c tích h p trong khoa h c v ng i máy. Các đ án trí tu nhân t o nghiên c u v

ng i máy b t đ u t đ án “m t – tay”. Trong th c t , ng i máy đ c dùng trong các nhi m v
chuyên sâu, thu c các dây truy n công nghi p.
ch

N i dung v khoa h c ng
ng c a tài li u này.

i máy s đ

c trình bày trong tài li u riêng, không thu c các

1.4.7 Tâm lý h c x lý thông tin
Các k t qu nghiên c u c a tâm lý h c giúp trí tu nhân t o xây d ng các c ch tr l i
theo hành vi, có ý th c. Nó giúp th c hi n các suy di n mang tính ng i.
H th ng chuyên gia th ng m i đ u tiên, R1, b t đ u ho t đ ng t i công ty thi t b k thu t
s (McDemott, 1982). Ch ng trình giúp s p x p c u hình cho các h th ng máy tính m i và
tr c n m 1986, nó đã ti t ki m cho công ty kho ng 40 tri u dollar m i n m.
n tr c n m
1988, nhóm nghiên c u AI c a DEC đã có 40 h th ng chuyên gia đ c tri n khai. Du pont có
100 chi c đi vào s d ng và 500 chi c đ c phát tri n, ti t ki m đ c kho ng 10 tri u dollar m i
n m. D ng nh m i m t cơng ty chính c a M đ u có m t nhóm AI c a riêng công ty và cùng s
d ng ho c đ u t vào công ngh h chuyên gia.
N m 1981, Nh t b n thông báo v d án “Th h th n m”, k ho ch 10 n m xây d ng
nh ng chi c máy tính thơng minh ch y Prolog gi ng nh nh ng chi c máy ch y ch ng trình mã
máy. Ý t ng đó v i kh n ng th c hi n hàng tri u phép tính m i giây, máy tính có th thu n l i
trong vi c l u tr hàng lo t lu t có s n. D án đ c đ a ra nh m máy tính có th giao ti p b ng
ngôn ng t nhiên cùng m t s các tham v ng khác.
D án “th h 5” thúc đ y ni m đam mê vào AI, b ng cách t n d ng n i lo l ng c a ng i
Nh t, các nhà nghiên c u, các t ng cơng ty có th h tr chung cho vi c đ u t t ng t nh
n c M . T ng công ty cơng ngh máy tính và siêu đi n t (MMC) đã đ c hình thành nh m t

cơng ty liên k t nghiên c u d án c a Nh t. Anh, bài báo Alvey làm ph c h i s v n đã b bài
báo Lighthill làm h t. Trong c hai tr ng h p, thì AI đ u là m t ph n trong n l c l n bao g m
c thi t k con chip và nghiên c u giao di n v i con ng i.
Bùng n công nghi p AI c ng bao g m c các cơng ty nh t p đồn Carnegie, Inference,
Intellicorp, và Teknowledge các công ty này yêu c u các công c ph n m m đ xây d ng h
chuyên gia và các công ty ph n c ng nh Lisp Machine, công ty thi t b Texas, Symbolic và
Xerox đã xây d ng h th ng làm vi c t i u đ phát tri n các ch ng trình Lisp. Trên 100 cơng ty
l p ráp h th ng cơng nghi p robot. Nói chung ngành công nghi p đi t m c ch bán đ c vài
tri u trong n m 1980 lên 2 t dollar n m 1988.
M c dù khoa h c máy tính b quên l nh v c m ng n ron sau khi cu n sách “kh n ng nh n
th c” c a Minsky và Papert ra đ i, nh ng các l nh v c khác v n ti p t c, đ c bi t là v t lý. M t s

10


l ng l n các n ron đ n gi n đã có th coi nh m t s nguyên t trong ch t r n. Các nhà v t lý
h c nh Hopfield (1982) đã s d ng các k thu t c h c th ng kê d n t i các ý t ng th thai
chéo quan tr ng. Các nhà tri t h c David Rumelhart và Geoff Hinton nghiên c u các m u m ng
n ron trí nh . Vào nh ng n m 1980, có ít nh t b n nhóm khác nhau nghiên c u l i thu t toán
Back-propagation. Thu t tốn này đ c cơng b l n đ u vào n m 1969 b i Bryson và Ho. Thu t
toán đ c áp d ng r t nhi u trong khoa h c máy tính và tâm lý h c, và ph bi n k t qu trong
cu n “x lý phân tán song song” (Rumelhart và McClelland, 1986).
Nh ng n m g n đây, chúng ta đã ch ng ki n s thay đ i r t l n trong n i dung và ph ng
pháp nghiên c u AI. Nó tr nên ph bi n khi d a trên các lý thuy t có s n. Trong nh ng n m
1970, m t s l n các ki n trúc và các ph ng pháp đã bu c ph i th . R t nhi u trong s này, th m
trí là ad hoc và fragile và đ c t ng tr ng m t vài ví d đ c ch n là đ c bi t. Trong nh ng
n m g n đây, các ph ng pháp d a trên mơ hình Markov n (HMMs) đã th ng tr l nh v c này,
hai khía c nh c a HMMs có liên quan đ n nh ng v n đ bàn lu n hi n t i. u tiên, chúng đ c
d a trên lý thuy t tốn h c chính xác. i u này cho phép các nhà nghiên c u ti ng nói xây d ng
các k t qu toán h c c a m t vài th p k đã đ c phát tri n m t s l nh v c khác. Th hai,

chúng đã đ c sinh ra b i m t quá trình x lý trên t p d li u ti ng nói. Ch c ch n r ng th c hi n
đó là d ng thơ, và trong các tr c nghi m HMMs kh t khe không rõ ràng đã ti n tri n đ u đ n.
L nh v c khác xem ra có l i ích t s chính th c hoá là l p k ho ch. Công vi c s m đ c
th c hi n b i Austin Tate (1977), sau đó là David Chapman (1987) đã có k t qu trong s t ng
h p c a các ch ng trình l p k ho ch vào m t khung làm vi c đ n gi n. ã có m t vài l i
khuyên r ng nên xây d ng trên m i cái khác nhau h n là b t đ u t con s không t i m i th i
đi m. K t qu c a các h th ng l p k ho ch đó ch th c s t t trong các th gi i thu h p, trong
n m 1970 nhi m v l p l ch cho công vi c c a nhà máy. Xem Ch ng 11 và 12 đ bi t thêm chi
ti t.
Cu n Tranh lu n theo xác su t trong các h th ng thông minh đã đánh d u m t s tán
th ng c a lý thuy t quy t đ nh và xác su t trong AI, ti p theo s h i sinh c a m t s thu nh lí
thú theo bài báo “Trong bi n h c a xác su t” c a Peter Cheeseman (1985). Tin t ng r ng hình
th c m ng là phát minh đã cho phép tranh lu n hi u qu v ch ng minh c a s ph i h p không
ch c ch n. Cách ti p c n l n này v t qua đ c v n đ các h th ng l p lu n có kh n ng trong
nh ng n m 1960 đ n 1970... Ch ng 14 t i 16 bàn t i l nh v c này.
C ng t ng t nh cu c cách m ng trong l nh v c ng i máy, kh n ng c a máy tính, máy
h c (bao g m c các m ng neural) và s trình di n tri th c. M t cách hi u t t nh t c a các v n đ
và s ph c t p các thu c tính, ph i h p cùng v i s ng y bi n đã gia t ng trong tốn h c, đã có s
ch đ o v l ch nghiên c u công vi c có kh n ng và các ph ng pháp d ng thơ. Có l đ c
khuy n khích b i s ti n tri n trong gi i quy t các v n đ con c a AI, các nhà nghiên c u đã b t
đ u tìm ki m “y u t đ y đ ” cho v n đ . Công vi c c a Allen Newel, John Laird và Paul
Rosenbloom SOAR (Newel, 1990; Laird 1987) là nh ng ví d hi u bi t t t nh t c a m t y u t
hoàn ch nh v ki n trúc trong AI. C ng g i là hành đ ng có m c đích “trong nh ng hoàn c nh xác
đ nh” c a các y u t đ a vào trong các môi tr ng th c t v i các đ u vào c m bi n liên t c.
Nhi u k t qu lý thú đã đ c tìm th y trong cơng vi c; bao g m s th c r ng tr c đó các l nh
v c con riêng bi t c a AI c n tái t o l i cái gì đó khi mà các k t qu c a h là cùng ch trong thi t
k m t y u t riêng r .

11



1.5 NH NG V N
NHÂN T O

CH A

C GI I QUY T TRONG TRÍ TU

Ki n t ng c vua qu c t Amold Denker, nghiên c u các quân c trên bàn c tr c m t
ơng ta. Ơng ta không hy v ng là hi n th c: ông ph i t b cu c ch i.
i th c a ơng, HITECH,
đã tr thành ch ng trình máy tính đ u tiên đánh th ng m t ki n t ng c trong m t ván ch i
(Berliner, 1989).
“Tôi mu n đi t Boston t i San Francisco” m t ng i du l ch nói trong micro. “B n s đi
vào th i gian nào?” là câu h i l i. Ng i du l ch gi i thích r ng cơ y mu n đi vào ngày 20 tháng
10, trên chuy n r nh t có th , và tr v vào ngày Ch nh t. M t ch ng trình giao ti p b ng tay
có th hi u đ c hành đ ng nói c a ng i là PEGASUS, đó là k t qu khiêm t n dùng đ đ t ch
chuy n đi du l ch v i giá 894 dollar b ng xe khách đ ng dài. M c dù v y ch ng trình nh n bi t
ti ng nói có quá 10 t b sai, nó có th là s t ng h p t các l i nh b i vì s hi u c a nó t các
h i tho i là đ a vào cùng m t lúc (Zue 1994).
M t phân tích t n i đi u khi n các nhi m v c a phịng thí nghi m Jet Propulsion b t đ u
xu h ng thanh tốn. M t thơng báo màu đ xu t hi n trên màn hình ch ra r ng “s khơng bình
th ng” v i ng i du hành trên tàu khơng gian, đó là m t n i nào đó trong vùng xung quanh sao
H i v ng. May thay, v n đ phân tích có th đúng t m t đ t. Nh ng ng i đi u khi n tin t ng
r ng có v n đ ph i đ c b qua đó là MARVEL, m t h chuyên gia th i gian th c có các màn
hình, dịng d li u thơ đ c chuy n t tàu không gian, các công vi c đi u khi n ch ng trình và
phân tích c nh báo đ i v i nh ng v n đ nghiêm tr ng

T NG K T
Ch ng này đ a ra các đ nh ngh a v AI và thi t l p l i các c s c a nó, đó là s phát

tri n. M t s các đi m quan tr ng đáng l u ý nh sau:
Ng i ta ngh v AI có khác nhau. Có hai câu h i quan tr ng đó là: b n có quan tâm đ n suy
ngh ho c hành vi? và B n có mu n hình m u con ng i ho c t m t ý t ng chu n m c?
Các nhà tri t h c (quay tr l i n m 400 tr.CN) đ a ra ý ki n cho r ng não b c ng nh m t
chi c máy, r ng nó đ c đi u khi n b ng tri th c đã đ c mã hoá, và ý ngh có th mang theo thói
quen giúp đ nh ng hành đ ng đúng đ n.
M t s nhà toán h c đã cung c p nh ng công c các l nh tính tốn logic ch c ch n c ng t t
nh là không ch c ch n, các l nh khơng chính xác. H c ng đ t c s làm vi c cho các thu t toán.
Ngành tâm lý h c c ng c thêm ý t ng r ng loài ng i và đ ng v t có th đ a ra cách x
lý thơng tin máy móc. Ngành ngơn ng h c trình bày r ng ngơn ng đ đ dùng trong mơ hình
này.
h

Ngành cơng nghi p máy tính cung c p các ng d ng c a AI. Các ch ng trình AI có xu
ng khá l n, và h không làm vi c đ c n u máy tính khơng có đ t c đ và b nh c n thi t.

L ch s c a AI có các chu kì thành cơng, t i u hố đ t khơng đúng ch , và k t qu d n đ n
gi m lòng nhi t tình và chi phí. C ng đã có nh ng b c l p ch ra đ c các cách ti p c n m i và
trau d i có h th ng trong s các cách đó.
Nh ng ti n tri n g n đây trong h c thuy t c n b n v s thông minh đã ti n b cùng v i kh
n ng c a các h th ng th c t .
Nh ng đi m chú ý v ti u s và l ch s

12


Cu n sách Artificial Intelligence c a Daniel Crevier (1993) đ a ra l ch s khá hoàn ch nh
c a l nh v c này, và Age of Intelligent Machines c a Raymond Kurzweil (1990) v AI trong ng
c nh c a khoa h c máy tính và l ch s trí tu . Các v n b n c a Dianne Martin (1993) c ng công
nh n r ng t r t s m các máy tính là có kh n ng b i s c m nh th n k c a trí tu .

Ph ng pháp lu n tr ng thái c a AI đ c Herb Simon bàn t i trong The Sciences of the
Artificial (1981), đó là các l nh v c nghiên c u đ c quan tâm cùng v i các đ t o tác ph c t p.
Nó c ng lý gi i t i sao AI có th có t m nhìn trên c hai l nh v c tốn h c và khoa h c.
Artificial Intelligence: The very Idea b i John Haugeland (1985) đã đ a ra s t ng thu t có
th đ c đ c c a tri t h c và các v n đ c a AI. Khoa h c nh n th c đ c mô t t t nh t b i
Johnson Laird, Máy tính và não b : gi i thi u v khoa h c nh n th c. Baker (1989) g m c ph n
cú pháp c a ngôn ng h c hi n đ i, cùng Chierchia và McConnel-Ginet (1990) bao g m c ng
ngh a, Allen (1995) bao g m c ngôn ng h c t quan đi m c a AI.
Feigenbaum và Feldman đã làm vi c v i AI t r t s m, cu n sách c a h có t a đ Máy
tính và suy ngh . Cu n X lý thông tin ng ngh a c a Minsky và m t lo t bài vi t v Trí tu máy
c a Donald Michie. M t s l ng l n các trang báo đ c t p h p l i trong S hi u bi t trong AI
(Webber và Nilsson, 1981).
Các cu c h i th o xu t hi n g n đây bàn v v n đ chính c a AI, đó là: th ng nh t c hai
n m m t l n di n ra h i th o qu c t AI, g i t t là IJCA (International Joint Conference AI), và
h i th o di n ra hàng n m m c qu c gia v AI, và AAAI là t ch c đ ng ra b o tr cho AI. Các
t p chí chuyên ngành chung v AI là AI, Computation Intelligence, t ch c IEEE Transactions on
Pattern Analysis and Machine Intelligence, và t p chí đi n t Journal of Artificial Intelligence
Research. Các s n ph m th ng m i đ a ra trong các t p chí nh AI Expert và PC AI. T ch c xã
h i chuyên nghi p v AI là American Association for AI (AAAI), ACM Special Interest Group in
AI (SIGART) và AISB (Society for AI and Simulation of Behaviour). T p chí v AI c a AAAI và
SIGART Bullentin có r t nhi u các đ tài và th y h ng d n t t nh là thông báo c a các cu c
h i th o và th o lu n.
Vi t Nam g n đây có t ch c các H i nghi Khoa h c: H m m ng n ron; Hoi th o Qu c
gia vè H m do vi n Toan h c, Vi n Công ngh Thông tin thu c vi n Khoa h c Công ngh Qu c
gia t ch c hàng n m.

BÀI T P VÀ CÂU H I
1. Chúng tôi đ a ra đ nh ngh a c a AI theo hai khía c nh, con ng i, ý t ng và hành đ ng.
Nh ng có nhi u khía c nh khác có giá tr đáng xét đ n. M t trong s đó là s ch n l a gi a: s
ph n khích c a chúng tơi v các k t qu lí thuy t ho c các ng d ng th c hành. M t khía c nh n a

là chúng tơi có d ki n có th nh n ra các máy tính c a chúng tơi có thơng minh hay khơng. ã có
8 đ nh ngh a tiêu bi u trong Hình 1.1 và có 7 đ nh ngh a theo b n khía c nh chúng tơi v a đ c p
và b n có c m th y các đ nh ngh a là h u ích sau đây
AI là ...
a. “m t t p h p các thu t tốn d tính tốn, thích h p tính g n đúng cho các bài tốn đ c bi t
khó .” (Partridge, 1991)
b. “s tham gia vào xây d ng m t h th ng kí hi u v t lí sao cho có th v
c a Turning.”

t qua tr c nghi m

c. “l nh v c khoa h c máy tính nghiên c u v các máy có th hành đ ng thơng minh ra sao.”
(Jackson, 1986)

13


d. “m t l nh v c nghiên c u đó là xoay quanh các k thu t tính tốn, cho phép th c hi n các
cơng vi c địi h i thơng minh th c s khi có con ng i tham d .” (Tanimoto, 1990)
e. “m t s đ u t r t l n c a trí tu c a t nhiên và các nguyên lí, các máy móc yêu c u s
am hi u ho c tái t o nó .” (Sharples , 1989)
f. “L i ích c a máy tính là làm đ

c m i th , xem nó nh là thơng minh.” (Rowe, 1988)

2. Nghiên c u tài li u AI đ tìm ra các cơng vi c nào d
máy tính:

i đây có th gi i quy t đ


c b ng

a. Trò ch i bóng bàn
b. Lái xe

trung tâm Cairơ

c. Khám phá và ch ng minh các lý thuy t toán h c m i.
d. Vi t m t truy n c
e.

i

a ra m t l i khuyên khá h p lý trong ph m vi liên quan đ n lu t pháp.

f. D ch ti ng Anh sang ti ng Vi t theo th i gian th c.
3. Th c t , h c u và d đốn:
a. Tìm m t b n công b c a m t nhà tri t h c ho c nhà khoa h c có uy tín cho r ng hi u qu
c a đ ch c ch n s khơng bao gi đ c trình di n b i máy tính, r ng đó bây gi đã đ c
trình di n.
b. Tìm m t cơng b c a m t nhà khoa h c v máy tính có uy tín cho r ng hi u qu c a đ đo
ch c ch n đ c trình di n b i th i đi m t khi nó h p qui cách.
c. So sánh đ chính xác c a nh ng d đoán trong các l nh v c khác nhau, ch ng h n nh y
sinh, công ngh nano, ho c đi n gia d ng.
4. Cho r ng “nh ng chi c máy tính là khơng thơng minh - chúng ch có th làm đ c nh ng gì
mà l p trình viên b o chúng” là câu l nh ph n tr c thì đúng và hàm ý sau đó khơng đúng?

14



CH

NG 2: CÁC PH

2.1. GI I QUY T V N

NG PHÁP GI I QUY T V N

KHOA H C VÀ TRÍ TU NHÂN T O

Trong ph n này, chúng ta ch ra m t agent có th hành đ ng nh th nào b ng cách đ t ra
m c tiêu và xem xét chu i các hành đ ng mà có th đ t đ c nh ng m c tiêu này. M t m c tiêu
và t p các ph ng ti n đ đ t đ c m c tiêu đ c g i là v n đ . Quá trình khám phá các ph ng
ti n có th làm đ c gì g i là tìm ki m. Chúng ta cho th y tìm ki m có th th c hi hie và nh ng
gi i h n c a nó..
Gi i quy t bài tốn b ng cách tìm ki m
Chúng ta xem m t agent quy t đ nh ph i làm gì? nh th nào? b ng cách xem xét có h
th ng k t qu các chu i hành đ ng mà nó th c hi n.
Trong ch ng này, chúng ta mô t m t agent d a trên m c đích g i là agent gi i quy t bài
tốn. Các agent gi i quy t v n đ s quy t đ nh ph i làm gì b ng cách tìm ki m chu i các hành
đ ng d n đ n tr ng thái mong mu n. Ch ng này phân tích các thu t tốn.

2.2. GI I QUY T V N

C A CON NG

I

Hãy t ng t ng các agent c a chúng ta trong thành ph Arad, Rumani đang th c hi n
m t chuy n du l ch. Agent đã có vé đ bay đ n Bucarét vào ngày hôm sau. Vé máy bay không th

tr l i đ c, visa c a agent chu n b h t h n, và k t ngày mai s khơng cịn ch trong 6 tu n t i.
Ph m vi th c hi n c a agent ch a nhi u y u t khác ngoài chi phí ti n vé máy bay và có m t đi u
khơng mong mu n là có th b tr c xu t. Ch ng h n, agent mu n c i thi n n c da rám n ng c a
mình, h c thêm ti ng Rumani, đi ch i đâu đó vv… T t c nh ng y u t này có th g i ra vơ s
các hành đ ng.
Agent đ a ra m c tiêu: lái xe t i Bucarét, và xem nh ng thành ph nào c n ph i đ caa,
xu t phát t Arad. Có ba con đ ng ra kh i Arad, m t đ ng đ n Sibiu, m t đ ng đ n
Timisoara và m t đ n Zerind. T t c các con đ ng này đ u không đ n Bucaret, vì v y tr khi
agent n m rõ b n đ Rumani, agent s không bi t ph i đi con đ ng nào ti p theo. Nói cách khác,
agent khơng bi t hành đ ng nào là t t nh t trong các hành đ ng. N u agent khơng có các ki n
th c tr giúp, nó s b t c (khơng tìm ra đ c đ ng đi ti p theo). Cách t t nh t nó có th làm là
ch n ng u nhiên m t trong các hành đ ng.
Gi thi t agent có m t b n đ Rumani, ho c trên gi y ho c trong trí nh . M c đích c a b n
đ là cung c p cho agent các thông tin v các tr ng thái mà nó có th đ n và nh ng hành đ ng mà
nó có th th c hi n. Agent có th s d ng thơng tin này đ xem xét các các đo n c a hành trình
mang tính gi thi t là: khi nó tìm ra m t con đ ng trên b n đ t Arad t i Bucaret, nó có th đ t
m c tiêu b ng cách th c hi n các hành đ ng t ng ng v i các ch ng c a hành trình. Sau đó
agent l a ch n các giá tr ch a bi t đ quy t đ nh ph i làm gì b ng cách ki m tra chu i các hành
đ ng khác nhau d n đ n các tr ng thái đã bi t; sau đó ch n hành đ ng t t nh t. Quá trình tìm
ki m m t chu i các hành đ ng nh v y đ c g i là tìm ki m. Gi i thu t tìm ki m coi m t v n đ
nh d li u vào và đáp s là m t gi i pháp d i d ng chu i hành đ ng. Khi m t gi i pháp đ c
tìm th y, các hành đ ng mà nó đ xu t có th đ c ti n hành. i u này đ c g i là giai đo n th c
hi n

15


Trong ph n này, chúng ta s tìm hi u q trình xác đ nh bài tốn chi ti t h n. Tr c tiên, ta
xem xét kh i l ng ki n th c mà agent có th có s d ng đ h ng đ n các hành đ ng c a nó và
tr ng thái mà nó ph i đi qua. i u này ph thu c vào s nh n th c c a agent v i mơi tr ng c a

nó nh th nào thơng qua k t qu giác quan và hành đ ng c a nó. Chúng ta bi t có b n lo i bài
toán khác nhau: bài toán m t tr ng thái đ n gi n; bài toán đa tr ng thái; bài toán ng u nhiên và bài
toán th m dò

2.3. PHÂN LO I V N

. CÁC

C TR NG C

B NC AV N

Nh ng v n đ (bài toán) xác đ nh rõ ràng và các gi i pháp
M t v n đ là m t t p h p các thông tin mà agent s d ng đ quy t đ nh ph i làm gì. Chúng
ta b t đ u b ng cách phân lo i các thông tin c n thi t dùng cho đ nh ngh a bài toán đ n tr ng thái.
Các y u t c b n c a vi c đ nh ngh a m t bài toán là các tr ng thái và các hành đ ng.
xác đ nh đ c chúng m t cách chính xác, chúng ta c n các y u t sau:
Tr ng thái ban đ u c a agent. T p các hành đ ng có th đ i v i agent. Thu t ng thao tác
(operation) đ c s d ng đ mô t m t hành đ ng trong ng c nh là tr ng thái nào nó s đ n n u
th c hi n hành đ ng trong t m t tr ng thái đ c bi t. (M t công th c s d ng hàm S. Cho tr c
tr ng thái x, S(x) cho tr ng thái có th đi t i t x b ng b t c m t hành đ ng đ n).
nh ngh a: không gian tr ng thái c a v n đ : là t p các tr ng thái có th đ t đ c b ng
chu i hành đ ng b t k xu t phát t tr ng thái ban đ u. M t hành trình trong khơng gian tr ng
thái là t p các hành đ ng tu ý xu t phát t tr ng thái này đ n tr ng thái khác.
Y u t ti p theo c a v n đ nh sau: tiêu chu n ki m tra tr ng thái hi n th i là tr ng thái
đích (m c tiêu)? Vi c ki m tra đ n gi n ch là đ nh m ki m tra xem chúng ta đã đi t i m t trong
các tr ng thái m c tiêu hay ch a. Th nh tho ng m c tiêu đ c xác đ nh b i m t thu c tính tr u
t ng thay vì m t t p đ m đ c các tr ng thái. Ch ng h n, trong môn đánh c , m c tiêu là đi t i
m t tr ng thái g i là “chi u t ng”, khi t ng c a đ i ph ng s b n b t k đ i ph ng đi nh
th nào b c k ti p.

Cu i cùng, ch n gi i pháp thích h p nh t, dù có nhi u gi i pháp t i đích. Ví d , chúng ta có
th thích nh ng hành trình có ít hành đ ng ho c các hành đ ng có chi phí th p.
Hàm chi phí đ ng đi là hàm đ c gán chi phí cho m t đ ng đi. Trong t t c các tr ng
h p chi phí c a đ ng đi là t ng các chi phí c a các hành đ ng đ n d c theo đ ng đi. Hàm chi
phí đ ng đi th ng đ c ký hi u là hàm g. Tr ng thái ban đ u, t p toán t , th t c ki m tra m c
tiêu và hàm chi phí đ ng đi xác đ nh m t v n đ . V m t t nhiên, chúng ta có th xác đ nh m t
ki u d li u đ bi u di n các v n đ :
Ki u d li u B i toán
Các thành ph n: Tr ng thái ban đ u, các toán t , ki m tra m c
tiêu, h m chi phí đ ng đi

Gi i quy t v n đ
Hi u qu c a tìm ki m có th đo đ c theo ít nh t ba ch tiêu Th nh t, có tìm th y m t gi i
pháp nào khơng? Th hai, đó có ph i là m t gi i pháp t t không (gi i pháp có chi phí đ ng đi

16


th p)? Th ba, chi phí tìm ki m v i th i gian tìm ki m và b nh yêu c u đ tìm m t gi i pháp là
bao nhiêu? Chi phí tồn b c a vi c tìm ki m là t ng chi phí đ ng đi và chi phí tìm ki m (S).
i v i v n đ tìm đ ng đi t Arad đ n Bucarét, chi phí đ ng đi t l thu n v i t ng đ
dài c a đ ng, c ng thêm chi phí do s c d c đ ng. Chi phí tìm ki m ph thu c vào các tình
hu ng. Trong mơi tr ng t nh, nó b ng khơng vì ph m vi th c hi n là đ c l p v i th i gian. N u
ph i c p t c đ n Bucarét, môi tr ng là bán đ ng b i vì vi c cân nh c lâu h n s làm chi phí
nhi u h n. Trong tr ng h p này, chi phí tìm ki m có thbi ì n thiên x p x tuy n tính v i th i
gian tính tốn(ít nh t v i m t kho ng th i gian nh ). Do đó, đ tính tốn t ng chi phí, chúng ta
c n ph i b sung thêm các giá tr là d m và mili giây. i u này không ph i ln d dàng b i vì
khơng có m t “t l trao đ i chính th c” gi a hai đ i l ng này. Agent b ng cách nào đó ph i
quy t đ nh nh ng tài nguyên nào s dành cho vi c tìm ki m và nh ng tài nguyên nào dành cho
vi c th c hi n.

i v i nh ng v n đ có không gian tr ng thái r t nh , d dàng tìm ra gi i pháp
v i chi phí đ ng đi th p nh t. Nh ng đ i v i nh ng v n đ ph c t p, l n, c n ph i th c hi n m t
s tho hi p- agent có th tìm ki m trong m t th i gian dài đ tìm ra gi i pháp t i u ho c agent
có th tìm ki m trong m t th i gian ng n h n và nh n đ c m t gi i pháp v i chi phí đ ng đi
cao h n m t chút. Ch n l a tr ng thái và hành đ ng
Bây gi chúng ta có các đ nh ngh a m i, chúng ta hãy b t đ u s đi u tra các v n đ c a
chúng ta v i m t v n đ khá d nh sau: “ Lái xe t Arad đ n Bucarét s d ng các con đ ng trên
b n đ ” M t không gian tr ng thái có x p x 20 tr ng thái, m i tr ng thái đ c xác đ nh b i v trí,
đ c ghi rõ là m t thành ph . Nh v y, tr ng thái ban đ u là “ Arad” và ki m tra m c tiêu là
“đây có ph i là Bucarét khơng?”. Các tốn h ng t ng ng v i vi c lái d c theo các con đ ng
gi a các thành ph .

Các bài tốn ví d
Ph m vi c a các môi tr ng nhi m v mà có th đ c mơ t đ c đi m b i các v n đ đ c
đ nh ngh a rõ ràng là r t r ng l n. Chúng ta có th phân bi t gi a cái g i là các bài tốn trị
ch i, mà nh m đ minh ho hay th c hành r t nhi u các ph ng pháp gi i quy t v n đ , và cái
g i là các bài toán thu c th gi i th c mà s là các v n đ khó kh n h n và m i ng i th c s
quan tâm đ n các gi i pháp đ gi i quy t các v n đ này. Trong ph n này, chúng ta s đ a ra ví d
cho c hai lo i v n đ đó. Các v n đ đ ch i t t nhiên có th mơ t m t cách chính xác, ng n
g n. i u đó có ngh a là các nhà nghiên c u khác nhau có th d dàng s d ng các v n đ này đ
so sánh vi c th c hi n c a các gi i thu t. Ng c l i, các v n đ th gi i th c l i khơng th có m t
s miêu t m t cách đ n gi n, nh ng chúng ta s c g ng đ a ra m t cách chung nh t v s mơ t
chính xác các v n đ này.

Các bài tốn Trị ch i
Trị ch i 8 quân c (C ta canh)
M t ví d c a trò ch i 8 quân c đ c ch ra trong hình 2.1, g m m t b ng kích th c 3 x 3
v i 8 quân c đ c đánh s t 1 đ n 8 và m t ô tr ng. M t quân c đ ng c nh ơ tr ng có th đi
vào ô tr ng. M c tiêu là ti n t i v trí các qn c nh
trong hình bên ph i. M t m o quan tr ng

c n chú ý là thay vì dùng các tốn t nh “ chuy n quân c s 4 vào ô tr ng”, s t t h n n u có
các tốn t nh “ ô tr ng thay đ i v trí v i quân c chuy n sang bên trái c a nó”, b i vì lo i tốn
t th hai này s ít h n. i u đó s giúp chúng ta có các khái ni m nh sau:


Các tr ng thái: m t s mô t tr ng thái ch rõ v trí c a m i quân c trong 8 qn c
m t
trong 9 ơ vng.
có hi u qu , s có ích n u tr ng thái bao g m c v trí c a ơ tr ng.



Các tốn t : ơ tr ng di chuy n sang trái, ph i, lên trên, đi xu ng.

17




Ki m tra m c tiêu: tr ng thái kh p v i hình d ng ch ra



Chi phí đ
đ ng đi.

ng đi: m i b

c đi chi phí là 1, vì v y chi phí đ


Tr ng thái đ u
1

2

3

7

4

6

5

8

hình 3.4
ng đi b ng đ dài c a

Tr ng thái đích
1

2

3

4

7


6

5

8

Hình 2.1 M t ví c a trị ch i 8 quân c
Trò ch i 8 quân c thu c v lo i trò ch i tr t kh i. L p trò ch i này đ c bi t đ n có m c
đ hồn thành NP, vì v y chúng ta khơng mong mu n tìm đ c các ph ng pháp t t h n các
thu t tốn tìm ki m đã đ c mơ t trong ch ng này và trong các ch ng ti p theo. Trò ch i 8
quân c và s m r ng c a nó, trị ch i 15 qn c là nh ng v n đ ki m tra tiêu chu n đ i v i
các gi i thu t tìm ki m trong AI.
Bài tốn 8 qn h u
M c tiêu c a bài toán 8 quân h u là đ t 8 con h u trên m t bàn c vua sao cho không con
nào n con nào. (M t con h u s n b t c con nào n m trên cùng hàng, cùng c t ho c cùng
đ ng chéo v i nó). Hình 2.2 ch ra m t gi i pháp c g ng đ gi i quy t bài toán nh ng không
thành công: con h u c t bên ph i nh t b con h u trên cùng bên trái chi u.
M c d u các gi i thu t đ c bi t hi u qu t n t i đ gi i quy t bài toán này và t p các bài
toán t ng quát n con h u, nó th c s v n là v n đ r t thú v dùng đ ki m tra các gi i thu t tìm
ki m. Có hai hai lo i ph ng pháp chính. Ph ng pháp gia t ng bao g m vi c đ t các con h u
t ng con m t, trong khi ph ng pháp tr ng thái hoàn thành l i b t đ u v i 8 con h u trên bàn c
và ti n hành di chuy n các con h u. Trong c hai ph ng pháp, ng i ta khơng quan tâm đ n chi
phí đ ng đi do ch tính đ n tr ng thái cu i cùng: các gi i thu t do đó ch đ c so sánh v chi
phí tìm ki m. Nh v y, chúng ta có vi c ki m tra m c tiêu và chi phí đ ng đi nh sau:
Hình 2.2 G n nh là m t gi i pháp đ i v i bài toán 8 con h u. ( Gi i pháp th c s đ
dành cho b n đ c t làm nh m t bài t p.)

18


c


Hình 2.2 M t gi i pháp đ i v i bài toán 8 con h u
◊ Ki m tra m c tiêu: 8 con h u trên bàn c , khơng con nào n con nào
◊ Chi phí đ

ng đi: b ng khơng

◊ C ng có các tr ng thái và các tốn t có th khác
.Hãy xem xét s cơng th c hố
◊ Các tr ng thái: b t c s s p x p c a t 0 đ n 8 con h u trên bàn c
◊ Các toán t : thêm m t con h u vào b t c ô nào
Trong cách công th c hố này, chúng ta có 648 dãy có th đ th . M t s l a ch n khôn
khéo s s d ng th c t là vi c đ t m t con h u vào ô mà nó đã b chi u s khơng thành cơng b i
vì vi c đ t t t c các con h u cịn l i s khơng giúp nó kh i b n(b con h u khác chi u). Do v y
chúng ta có th th cách cơng th c hoá sau:
◊ Các tr ng thái: là s s p x p c a 0 đ n 8 con h u mà khơng con nào n con nào
◊ Các tốn t : đ t m t con h u vào c t tr ng bên trái nh t mà nó không b
h u nào khác.

n b i b t c con

D th y r ng các hành đ ng đã đ a ra ch có th t o nên các tr ng thái mà khơng có s n
l n nhau; nh ng đơi khi có th khơng có hành đ ng nào. Tính tốn nhanh cho th y ch có 2057
kh n ng có th đ x p th các con h u. Cơng th c hố đúng đ n s t o nên m t s khác bi t r t
l n đ i v i kích th c c a khơng gian tìm ki m. Các s xem xét t ng t c ng s đ c áp d ng
cho cách cơng th c hố tr ng thái đ y đ . Ch ng h n, chúng ta có th thi t l p v n đ nh sau:
◊ Các tr ng thái: là s s p x p c a 8 con h u, m i con trên m t c t.
◊ Các toán t : di chuy n b t c con h u nào b chi u t i m t ô khác trên cùng c t.

Cách công th c này s cho phép các gi i thu t cu i cùng tìm ra m t gi i pháp, nh ng s là
t t h n n u di chuy n t i ô b chi u.
Các bài tốn th gi i th c
Tìm ki m đ

ng đi

Chúng ta đã xem vi c tìm ki m đ ng đi đ c đ nh ngh a nh th nào b ng các thu t ng
ch các v trí xác đ nh và các phép di chuy n d c theo các đ ng n i gi a chúng. Các gi i thu t
tìm ki m đ ng đi đ c s d ng trong r t nhi u các ng d ng, nh tìm đ ng đi trong các m ng
máy tính , trong các h th ng t v n du l ch t đ ng, và trong các h th ng l p k ho ch cho các
chuy n du l ch b ng máy bay. ng d ng cu i cùng có l ph c t p h n, b i vì du l ch b ng máy
bay có chi phí đ ng đi r t ph c t p, liên quan đ n v n đ ti n nong, ch t l ng gh ng i, th i
gian trong ngày, lo i máy bay, các gi i th ng cho các l trình bay th ng xuyên, v.v H n n a,
các hành đ ng trong bài tốn khơng có k t qu đ c bi t đ y đ : các chuy n bay có th đ n ch m
hay đ ng ký tr c quá nhi u, có th b m t liên l c, s ng mù ho c s b o v kh n c p có th gây
ra s trì hỗn.
Bài tốn ng

i bán hàng rong và các chuy n du l ch

Hãy xét bài toán kinh đi n sau: “ Th m t t c các thành ph m i thành ph th m ít nh t m t
l n, kh i hành và k t thúc Bucaret”. i u này r t gi ng v i tìm ki m đ ng đi, b i vì các toán
t v n t ng ng v i các chuy n đi gi a các thành ph li n k . Nh ng đ i v i bài toán này,
không gian tr ng thái ph i ghi nh n nhi u thơng tin h n. Ngồi v trí c a agent, m i tr ng thái
ph i l u l i đ c các thành ph mà agent đã đi qua. Nh v y, tr ng thái ban đ u s là “ Bucaret:
đã th m{Bucaret}.”, m t tr ng thái trung gian đi n hình s là “ Vaslui: đã th m {Bucaret,

19



Urziceni, Vaslui}.” và vi c ki m tra m c tiêu s ki m tra xem agent đã
20 thành ph đã đ c vi ng th m xong toàn b ch a.

Bucaret ch a và t t c

Bài toán ng i bán hàng rong (TSP) là m t bài toán du l ch n i ti ng trong đó m i thành
ph ph i đ c vi ng th m đúng chính xác m t l n. M c đích là tìm hành trình ng n nh t. 6 Bài
tốn có đ ph c t p NP(Karp,1972), nh ng đã có m t s c g ng r t l n nh m c i thi n kh n ng
c a các thu t tốn TSP. Ngồi các chuy n đi đã đ c l p k ho ch cho ng i bán hàng rong,
nh ng thu t toán này đã đ c s d ng cho các nhi m v nh l p k ho ch cho s d ch chuy n c a
các m i khoan trên trên b ng m ch m t cách t đ ng.
Bài tốn hành trình ng n nh t - ng d ng ngun lý tham lam (Greedy)
Bài tốn: Hãy tìm m t hành trình cho ng i giao hàng đi qua n đi m khác nhau, m i đi m
đi qua m t l n và tr v đi m xu t phát sao cho t ng chi u dài đo n đ ng c n đi là ng n nh t.
Gi s r ng có con đ ng n i tr c ti p t gi a hai đi m b t k .
T t nhiên là có th gi i bài toán này b ng cách li t kê t t c các con đ ng có th đi, tính
chi u dài c a m i con đ ng đó r i tìm con đ ng có chi u dài ng n nh t. Tuy nhiên cách gi i
này có đ ph c t p O(n!) Do đó, khi s đ i lý t ng thì s con đ ng ph i xét s t ng lên r t nhanh.
M t cách đ n gi n h n nhi u cho k t qu t ng đ i t t là ng d ng thu t toán heuristic ng
d ng nguyên lý tham lam Greedy. T t ng c a thu t gi i nh sau:


i m kh i đ u, ta li t kê t t c các quãng đ
đi theo con đ ng ng n nh t.

ng t đi m xu t phát cho đ n n đ i lý r i ch n




Khi đã đi đ n m t đ i lý ch n đi đ n đ i lý k ti p c ng theo nguyên t c trên. Ngh a là li t
kê t t c các con đ ng t đ i lý ta đang đ ng đ n nh ng đ i lý ch a đ n. Ch n con đ ng
ng n nh t. L p l i quá trình này cho đ n lúc khơng cịn đ i lý nào đ đi
Bài toán phân vi c - ng d ng c a ngun lý th t

Bài tốn: M t cơng ty nh n đ c h p đ ng gia công m chi ti t máy J1, J2, … Jm. Cơng ty có
n máy gia cơng l n l t là P1, P2, … Pn. M i chi ti t đ u có th gia cơng trên b t k máy gia công
nào. M t khi đã gia công m t chi ti t trên m t máy, công vi c s ti p t c cho đ n lúc hồn thành,
khơng th b c t ngang.
gia cơng m t vi c J1 trên m t máy b t k ta c n dùng th i gian t ng
ng là t1. Nhi m v c a công ty là làm sao đ gia cơng xong tồn b n chi ti t trong th i gian s m
nh t.
Chúng ta xét bài tốn trong tr ng h p có 3 máy P1, P2, P3 và sáu công vi c v i th i gian là
t1 = 2 , t2 = 5, t3 = 8, t4 = 1, t5 = 5, t6 = 1. Có m t gi i pháp đ c đ t ra là: T i th i đi m t = 0, ta
ti n hành gia công chi ti t J2 trên máy P1, J5 trên máy P2 và J1 t i P3. T i th i đi m t = 2 cơng vi c
J1 đ c hồn thành, trên máy P3 ta gia công ti p chi ti t J4. Trong lúc đó, hai máy P1 và P2 v n
đang th c hi n công vi c đ u tiên c a mình … Theo v y sau đó máy P3 s ti p t c hồn thành n t
các công vi c J6 và J3. Th i gian hồn thành cơng vi c là 12. Ta th y ph ng án này đã th c hi n
công vi c m t cách không t t. Các máy P1 và P2 có quá nhi u th i gian r nh.
Thu t tốn tìm ph ng án t i u L0 cho bài toán này theo ki u vét c n có đ ph c t p c
O(m ) (v i m là s máy và n là s công vi c). Bây gi ta xét đ n m t thu t gi i Heuristic r t đ n
gi n (đ ph c t p O(n)) đ gi i bài tốn này:
n

• S p x p các cơng vi c theo th t gi m d n v th i gian gia cơng
• L nl

t s p x p các vi c theo th t đó vào máy cịn d nhi u th i gian nh t

V i t t ng nh v y ta hồn tồn có th đ a ra m t ph ng án t i u L*, th i gian th c

hi n công vi c b ng 8, đúng b ng th i gian th c hi n công vi c J3

20


i u khi n Robot
i u khi n robot là s t ng qt hố c a bài tốn tìm đ ng đi đã đ c miêu t lúc tr c.
Thay vì m t t p các l trình r i r c, m t robot có th di chuy n trong m t không gian liên ti p v i
(v m t nguyên lý) m t b vô h n các hành đ ng và tr ng thái có th .
đ n gi n, robot tròn di
chuy n trên m t m t ph ng, không gian b n ch t là hai chi u. Khi rob t có cánh tay và chân mà
ph i đ c đi u khi n, khơng gian tìm ki m tr nên đa chi u. C n có các k thu t tiên ti n đ bi n
khơng gian tìm ki m tr nên h u h n. Ngoài s ph c t p c a bài tốn cịn ch các robot th t s
ph i x lý các l i trong vi c đ c thông tin sensor và các b đi u khi n đ ng c .
S p x p dãy
S l p ráp t đ ng các đ i t ng ph c t p đ c th c hi n b i rôb t l n đ u tiên đã đ c
ti n hành b i robot Freddy (Michie,1972). S phát tri n k t đó khá ch m ch p nh ng ch c ch n
nó r t c n cho nh ng n i l p ráp ph c t p nh l p ráp đi n t . Trong các bài toán l p ráp, v n đ
là tìm m t th t đ l p ráp các ph n c a m t s n ph m. N u nh l a ch n sai m t th t , s
không th l p thêm m t s các b ph n c a s n ph m n u nh không ph i d b m t s b ph n
đã l p ráp lúc tr c đó. Ki m tra m t b c trong dãy đ đ m b o tính kh thi là m t bài tốn tìm
ki m hình h c ph c t p r t g n v i đi u khi n robot. Nh v y, vi c sinh ra nh ng b c k v h p
lý là khâu đ t nh t trong dây truy n l p ráp và vi c s d ng các gi i thu t t t đ làm gi m vi c tìm
ki m là đi u c n thi t.

2.4 CÁC PH

NG PHÁP BI U DI N VÂN

Tìm ki m các gi i pháp

Chúng ta đã xem xét cách làm th nào đ xác đ nh m t v n đ , và làm th nào đ cơng nh n
m t gi i pháp. Ph n cịn l i – tìm ki m m t gi i pháp- đ c th c hi n b i m t phép tìm ki m
trong khơng gian tr ng thái. ý t ng là đ duy trì và m r ng m t t p các chu i gi i pháp c c b .
Trong ph n này, chúng ta ch ra làm th nào đ sinh ra nh ng chu i này và làm th nào đ ki m
soát đ c chúng b ng cách s d ng các c u trúc d li u h p lý.
Kh i t o các chu i hành đ ng
Ví d đ gi i quy t bài tốn tìm đ ng đi t Arad đ n Bucaret, chúng ta b t đ u v i tr ng
thái đ u là Arad. B c đ u tiên là ki m tra xem nó có ph i là tr ng thái đích hay khơng. Rõ ràng
là không, nh ng vi c ki m tra là r t quan tr ng đ chúng ta có th gi i quy t nh ng vi c b ch i
x nh “ b t đ u Arad, đi đ n Arad”. Do nó khơng ph i là tr ng thái đích, chúng ta c n ph i
xem xét m t s tr ng thái khác. i u này đ c th c hi n b ng cách áp d ng các toán t cho tr ng
thái hi n th i, do đó xây d ng nên m t t p các tr ng thái m i. Quá trình này đ c g i là s m
r ng tr ng thái. Trong tr ng h p này, chúng ta có ba tr ng thái m i, “ Sibiu”,” Timisoara” và
“ Zerind” b i vì có m t đ ng đi m t b c tr c ti p t Arad đ n ba thành ph này. N u nh ch
có duy nh t m t kh n ng, chúng ta s ch n kh n ng đó và ti p t c đi ti p. Nh ng b t c khi nào
mà có nhi u kh n ng l a ch n, chúng ta ph i quy t đ nh s ch n ph ng án nào đ đi ti p.
ây chính là v n đ c t y u c a vi c tìm ki m – l a ch n m t v trí và đ các l a ch n
còn l i cho vi c l a ch n sau này n u nh s l a ch n đ u tiên không đ a đ n m t gi i pháp. Gi
s chúng ta ch n Zezind. Chúng ta ki m tra xem nó đã ph i là tr ng thái đích ch a (nó ch a ph i
tr ng thái đích), và sau đó m r ng nó đ có “ Arad “ và “ Oradea”. Nh th chúng ta có th
ch n m t trong hai tr ng thái này, ho c là quay l i và ch n Sibiu hay Timisoara. Chúng ta ti p t c
ch n , ki m tra và m r ng cho đ n khi tìm đ c m t đ ng đi, ho c cho đ n khi khơng cịn tr ng

21


thái nào n a đ m r ng. Vi c l a ch n tr ng thái nào đ m r ng tr
ki m quy t đ nh.

c tiên do chi n l


2.5. CÁC PH

B N

Các chi n l

NG PHÁP GI I QUY T V N

C

c tìm

c tìm ki m

Cơng vi c ch y u c a vi c tìm ki m đã chuy n sang vi c tìm ki m m t chi n l c tìm
ki m đúng đ n đ i v i m t v n đ . Trong s nghiên c u c a chúng ta v l nh v c này, chúng ta s
đánh giá các chi n l c b ng các thu t ng c a b n tiêu chu n sau:
◊ Tính hồn thành: chi n l


c có b o đ m tìm th y m t gi i pháp khi có m t v n đ

ph c t p th i gian: chi n l

c m t bao lâu đ tìm ra m t gi i pháp?



ph c t p không gian (dung l ng b nh ): chi n l

b nh c n thi t đ th c hi n vi c tìm ki m.
◊ Tính t i u: chi n l
gi i pháp khác nhau?

c có tìm đ

c gi i pháp có ch t l

c đó c n bao nhiêu dung l

ng

ng cao nh t khi có m t s các

Ph n này s nói đ n 6 chi n l c tìm ki m mà đ c s d ng d i tiêu đ tìm ki m khơng
đ thơng tin (uninformed search). Thu t ng này có ngh a là khơng có các thơng tin v s các
b c hay chi phi đ ng đi t tr ng thái hi n t i cho t i đích – t t c nh ng gì chúng có th làm là
phân bi t m t tr ng thái đích v i m t tr ng thái không ph i là tr ng thái đích. Tìm ki m khơng có
thơng tin đ y đ đơi khi cịn đ c g i là tìm ki m mù (blind search).
Tìm ki m theo chi u r ng
M t chi n l c tìm ki m đ n gi n là tìm ki m theo chi u r ng. Trong chi n l c này, nút
g c đ c m r ng tr c tiên, sau đó đ n l t t t c các nút mà đ c sinh ra b i nút g c đ c m
r ng, và sau đó ti p đ n nh ng nút k ti p c a chúng và c nh v y. Nói m t cách t ng quát, t t
c các nút đ sâu d trên cây tìm ki m đ c m r ng tr c các nút đ sâu d+1. Tìm ki m theo
chi u r ng có th đ c th c hi n b ng cách g i gi i thu t general-search v i m t hàm hàng đ i
mà đ a các tr ng thái m i đ c sinh ra vào cu i c a hàng đ i, đ ng sau t t c các tr ng thái mà
đã đ c sinh ra tr c nó:
Function Tìm- ki m- r ng(problem)
Returns m t gi i pháp ho c th t b i
Return General-search (problem, x p vào cu i hàng)


Hình 2.3. Tìm ki m trên m t cây nh phân đ n gi n
Tìm ki m theo chi u r ng là m t chi n l c r t có ph ng pháp (có h th ng) b i vì nó
xem xét t t c các đ ng đi có đ dài b ng 1 tr c, sau đó đ n t t c nh ng đ ng đi có đ dài

22


b ng 2, và c nh v y. Hình 2.3 ch ra quá trình c a s tìm ki m trên m t cây nh phân đ n gi n.
N u nh có m t gi i pháp, tìm ki m theo chi u r ng đ m b o s tìm đ c nó, và n u có nhi u gi i
pháp, tìm ki m theo chi u r ng s ln tìm ra tr ng thái đích nơng nh t tr c tiên. D i thu t ng
c a 4 tiêu chu n, tìm ki m theo chi u r ng là hồn thành, và nó đ c cung c p m t cách t i u
chi phí đ ng d n b ng m t hàm t ng c a đ sâu các nút.
Chúng ta ph i xem xét th i gian và dung l ng b nh nó s d ng đ hồn thành m t cu c
tìm ki m.
làm đi u này, chúng ta xem xét m t khơng gian tr ng thái có tính gi thi t trong đó
m i tr ng thái có th đ c m r ng đ t o ra các tr ng thái m i b. Chúng ta nói r ng y u t phân
nhánh c a nh ng tr ng thái này (và c a cây tìm ki m) là b. G c c a cây tìm ki m sinh ra b nút
m c đ u tiên, m i nút đó l i sinh ra thêm b nút, và s có c th y b2 nút m c th hai. M i m t
nút này l i sinh ra thêm b nút, t o ra b3 nút m c th ba, và c nh v y. Bây gi chúng ta gi s
r ng gi i pháp cho bài tốn này có đ dài đ ng đi là d, nh v y s nút t i đa đ c m r ng tr c
khi tìm th y m t gi i pháp là :
1 + b + b2 + b3 +.... + bd
ây là s nút t i đa, nh ng gi i pháp có th đ c tìm th y b t c đi m nào thu c m c có
đ sâu là d. Do đó, trong tr ng h p t t nh t , s l ng các nút s ít h n.
Tìm ki m v i chi phí th p nh t
Phép tìm ki m theo chi u r ng tìm đ c tr ng thái đích, nh ng tr ng thái này có th khơng
ph i là gi i pháp có chi phí th p nh t đ i v i m t hàm chi phí đ ng đi nói chung. Tìm ki m v i
chi phí th p nh t thay đ i chi n l c tìm ki m theo chi u r ng b ng cách luôn luôn m r ng nút
có chi phí th p nh t (đ c đo b i cơng th c tính chi phí đ c đi g(n)), thay vì m r ng nút có đ

sâu nơng nh t. D th y r ng tìm ki m theo chi u r ng chính là tìm ki m v i chi phí th p nh t
v i g(n)= DEPTH(n).
Khi đ t đ c nh ng đi u ki n nh t đ nh, gi i pháp đ u tiên đ c tìm th y s đ m b o là gi i
pháp r nh t, do n u nh có m t đ ng đi khác r h n, nó đã ph i đ c m r ng s m h n và nh
v y nó s ph i đ c tìm th y tr c. Vi c quan sát các hành đ ng c a chi n l c s giúp gi i thích
đi u này. Hãy xem xét bài tốn tìm đ ng đi. Ván đ là đi t S đ n G, và chi phí c a m i tốn t
đ c ghi l i. u tiên chi n l c s ti n hành m r ng tr ng thái ban đ u, t o ra đ ng đi t i A, B
và C. Do đ ng đi t i A là r nh t, nó s ti p t c đ c m r ng, t o ra đ ng đi SAG mà th c s
là m t gi i pháp, m c dù không ph i là ph ng án t i u. Tuy nhiên, gi i thu t không công nh n
nó là m t gi i pháp, b i vì nó chi phí là 11, và nó b che b i đ ng đi SB có chi phí là 5 trong
hàng đ i. D ng nh th t là x u h n u sinh ra m t gi i pháp ch nh m chơn nó sâu trong hàng
đ i, nh ng đi u đó là c n thi t n u chúng ta mu n tìm m t gi i pháp t i u ch không đ n thu n
là tìm b t c gi i pháp nào. B c ti p theo là m r ng SB, t o ra SBG, và nó là đ ng đi r nh t
còn l i trong hàng đ i, do v y m c tiêu đ c ki m tra và đ a ra m t gi i pháp.
Phép tìm ki m chi phí ít nh t tìm ra gi i pháp r nh t tho mãn m t yêu c u đ n gi n: Chi
phí c a m t đ ng đi ph i không bao gi gi m đi khi chúng ta đi d c theo đ ng đi. Nói cách
khác, chúng ta mong mu n r ng
g(Successor(n)) ≥ g(n)

v i m i nút n.

Gi i h n đ i v i chi phí đ ng đi không đ c gi m th c s s là v n đ c n quan tâm n u
chi phí đ ng đi c a m t nút là t ng chi phí c a các tốn t mà t o nên đ ng đi. N u nh m i
toán t có m t chi phí khơng âm, thì chi phí c a đ ng đi khơng bao gi có th gi m đi khi chúng
ta đi d c theo đ ng đi và phép tìm ki m v i chi phí gi ng nhau có th tìm đ c đ ng đi r nh t
mà không c n ki m tra h t toàn b cây. Nh ng n u m t s tốn t có chi phí âm thì ch ng có m t

23



×