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

slike bài giảng trí tuệ nhân tạo - nguyễn nhật quang chương 6 giới thiệu về logic

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 (684.3 KB, 77 trang )

Trí Tuệ Nhân Tạo
Nguyễn Nhật Quang

Trường Đại học Bách Khoa Hà Nội
Viện Công nghệ Thông tin và Truyền thông
Năm học 2012-2013
Nội dung môn học:
 Giới thiệu về Trí tuệ nhân tạo
 Tác tử
 Giải quyết vấn đề: Tìm kiếm, Thỏa mãn ràng buộc
 Logic và suy diễn
 Biểu diễn tri thức
 Biểu diễn tri thức không chắc chắn

Họcmáy

Học

máy
2
Trí tuệ nhân tạo
Giới thiệu
v
ề lo
g
ic
g
 Logic là ngôn ngữ hình thức cho phép (giúp) biểudiễn thông
t
in
dướ


i
dạ
n
g
các
k
ết
l
uậ
n

t
h

được
đưa
r
a
t
dướ
dạ g
các
ết
uậ

t ể
được
đưa
a
 Logic = Syntax + Semantics

 Cú pháp (syntax): để xác định các mệnh đề (sentences)
trong
một
ngôn
ngữ
trong
một
ngôn
ngữ
 Ngữ nghĩa (semantics): để xác định “ý nghĩa" củacácmệnh
đề trong một ngôn ngữ


 Tứclà, xácđịnh sựđúng đ

ncủamộtmệnh đ

 Ví dụ: Trong ngôn ngữ của toán học

(x+2

y)

một
mệnh
đề
;(
x+y
>
{})

không
phải

một
mệnh
đề

(x+2



y)


một
mệnh
đề
;

(
x+y
>

{})

không
phải

một
mệnh

đề
 (x+2 ≥ y) là đúng nếuvàchỉ nếugiátrị (x+2) không nhỏ hơngiátrị y
 (x+2 ≥ y) là đúng khi x = 7, y = 1

(x+2

y)

sai
khi
x
=
0y
=
6

(x+2



y)


sai
khi
x

0
,
y


6
3
Trí tuệ nhân tạo

p

p
của một lo
g
ic
pp
g
 Cú pháp = Ngôn ngữ + Lý thuyết chứng minh
 Ngôn ngữ (Language)
 Các ký hiệu (symbols), biểu thức (expressions), thuật ngữ (terms),
công thức (formulas) hợp lệ
 E.g., one plus one equal two
 Lý thuyết chứng minh (Proof theory)
Tậ h álậtdiễ hhéhứ ih( lậ )á

Tậ
p
h
ơp c
á
c
l
u
ật

suy
diễ
n c
h
o p

p c
hứ
ng m
i
n
h

(
suy
l
u

n ra
)
c
á
c
biểu thức
 Ví dụ: Luật suy diễn any plus zero Ⱶ any
ề ầ
 Một định lý (theorem) là một mệnh đ

logic c


n chứng minh
 Việc chứng minh một định lý không cần phải xác định ngữ nghĩa
(interpretation) của các ký hiệu!
(interpretation)

của

các



hiệu!
4
Trí tuệ nhân tạo
N
g
ữ n
g
hĩa của một lo
g
ic
g
g
g
 Ngữ nghĩa = Ý nghĩa (diễn giải) của các ký hiệu
Ví d



d


 I(one) nghĩa là 1 (∈ N)
 I(two) nghĩa là 2 (∈ N)
 I(
p
lu
s
) nghĩa là phép cộng + : N x N → N
 I(equal) nghĩa là phép so sánh bằng = : N x N → {true, false}
 I(one plus one equal two) nghĩa là true
 Nếu diễn giải của một biểu thức là đúng (true), chúng ta
nói rằng phép diễn giải này là một mô hình (model) của
biểuthức
biểu

thức
 Một biểu thức đúng đối với bất kỳ phép diễn giải nào thì
được gọi là một biểu thức đúng đắn (valid)
 Ví dụ: A OR NOT
A
5
Trí tuệ nhân tạo
T
ính bao hàm
 Tính bao hàm có nghĩalàmột cái gì đó tuân theo (bị hàm
chứa
ý
n
g
hĩabởi

)
m

tcái
g
ì khác:
ý
g
)

g
KB ╞α

Một

sở
tri
thức
KB
bao
hàm
(
hàm
chứa
)
mệnh
đề
α

Một



sở
tri

thức
KB
bao
hàm
(
hàm
chứa
)

mệnh
đề
α

nếuvàchỉ nếu α là đúng trong mọimôhình(thế giới)
mà trong đó KB là đúng – Tứclà: nếu KB đúng, thì α
cũn
g
p
hải đún
g
g
p
g
 Ví dụ: Nếu mộtcơ sở tri thức KB chứacácmệnh đề “Đội bóng A
đãthắng” và “Đội bóng B đãthắng”, thì KB bao hàm mệnh đề

“Đội bóng A hoặc đội bóng B đãthắng”


dụ
:
Mệnh
đề
(
x+y
=
4)
bao
hàm
mệnh
đề
(4
=
x+y
)



dụ
:

Mệnh
đề
(
x+y
=


4)

bao
hàm
mệnh
đề
(4

=

x+y
)
 Tính bao hàm là mối quan hệ giữacácmệnh đề dựatrên
ngữ nghĩa
6
Trí tuệ nhân tạo
Các mô hình
 Các nhà logic học thường hay xem
xét các sự việc theo các mô hình
(models)
(models)
 Các mô hình là các không gian (thế
giới) có cấu trúc, mà trong các không
gian đó tính đúng đắn(củacácsự
gian

đó

tính


đúng

đắn

(của

các

sự

việc) có thể đánh giá được
 Định nghĩa: m là một mô hình của
mệnh đề α nếu α là đúng trong
m
mệnh

đề

α

nếu

α



đúng

trong


m
 M(α) là tập hợp tất cả các mô hình
của α
 KB╞ α nếu và chỉ nếu M(KB) ⊆ M(α)
 Ví dụ: KB = “Đội bóng A đã thắng và
đội bóng B đã thắng”, α = “Đội bóng
A đãthắng

A

đã

thắng
7
Trí tuệ nhân tạo
Suy diễn lo
g
ic (1)
g
 KB ├
i
α

Mệnh
đề
α
được
suy
ra

từ
KB
bằng
cách
áp
dụng
thủ
tục
(
suy

Mệnh
đề
α
được
suy
ra
từ
KB

bằng
cách
áp
dụng
thủ
tục
(
suy
diễn) i
 (Nói cách khác) Thủ tục i suy ra mệnh đề α từ KB

 Tính đúng đắn (soundness)
 Một thủ tục suy diễn i đượcgọilàđúng đắn (sound), nếuthủ tục
i
hỉ
á
ệ h
đề
đ
b

(tild t )
i
suy ra c
hỉ
c
á
cm

n
h
đề
đ
ược
b
ao

m
(
en
t

a
il
e
d
sen
t
ences
)
 Thủ tục i là đúng đắn, nếubấtcứ khi nào KB ├
i
α, thì cũng đúng
đốivới KB╞ α
 Nếu thủ tục i suy ra mệnh đề α, mà α không được bao hàm trong
KB, thì thủ tục i là không đúng đắn (unsound)
8
Trí tuệ nhân tạo
Suy diễn lo
g
ic (2)
g
 Tính hoàn chỉnh (completeness)
Một
thủ
t
diễ
i
đ
i



hỉ h
(lt)
ế

Một

thủ
t
ụcsuy
diễ
n
i
đ
ượcgọ
i

h
o
à
nc
hỉ
n
h
(
comp
l
e
t
e
)

, n
ế
u
thủ tục i có thể suy ra mọi mệnh đề được bao hàm (entailed
sentences)
Thủ
t
i


hỉ h
ế
bất

khi
à
KB

thì
ũ
đú

Thủ
t
ục
i

h
o
à

nc
hỉ
n
h
, n
ế
u
bất
c

khi
n
à
o
KB

α,
thì
c
ũ
ng
đú
ng
đốivới KB ├
i
α

(
Trong
phần

tiếp
theo
của
bài
giảng
)
chúng
ta
sẽ
xét
đến

(
Trong
phần
tiếp
theo
của
bài
giảng
)

chúng
ta
sẽ
xét
đến
logic vị từ bậc 1 (first-order logic)
 Có khả năng biểudiễn(diễn đạt) hầuhết các phát biểu logic
 Với logic vị từ bậc1, tồntạimộtthủ tục suy diễn đúng đắn và

hoàn chỉnh
9
Trí tuệ nhân tạo
Suy diễn lo
g
ic (3)
g
 Logic là một cách để biểu diễn hình thức và suy diễn tự
động
động
 Việc suy diễn (reasoning) có thể được thực hiện ở mức
cú pháp (bằng các chứng minh):
suy diễndiễndịch


pháp

(bằng

các

chứng

minh):

suy

diễn

diễn


dịch

(deductive reasoning)
 Việc su
y
diễn có thể được thực hiện ở mức n
g
ữ n
g
hĩa

y g g
(b

ng các mô hình): suy diễn dựa trên mô hình
(model-based reasoning)
10
Trí tuệ nhân tạo
Suy diễn lo
g
ic (4)
g
 Suy diễn ngữ nghĩa ở mức của một phép diễn giải (mô
hình
)
:
)
 Với một biểu thức, có tồn tại một mô hình không?: có
thể thỏa mãn được (satisfiability)

 Với một biểu thức và một phép diễn giải, kiểm tra xem
phép diễn giải có phải là một mô hình của biểu thức
khôn
g
?: ki

m tra mô hình
(
model checkin
g)
g
(g)
 Suy diễn ngữ nghĩa ở mức của tất cả các phép diễn giải
có thể: kiểm tra tính đúng đắn (validity checking)
 Logics that are sound (correct) and complete:
provability corresponds to validity
11
Trí tuệ nhân tạo
Lo
g
ic định đề


p

p
(1)
g
pp
 Logic định đề (propositional logic) là loại logic đơn giản

nhất
nhất
 Biểu thức định đề (propositional formula)
Mộtkýhiệ đị h đề (S
S
)là ộtbiể thứ (đị h đề)

Một



hiệ
u
đị
n
h

đề

(S
1
,
S
2
, …
)


m
ột


biể
u
thứ
c
(đị
n
h

đề)
 Các giá trị hằng logic đúng (true) và sai (false) là các biểu
thức
 Nếu S
1
là một biểu thức, thì (¬S
1
) cũng là một biểu thức
(Phép phủ định)
12
Trí tuệ nhân tạo
Lo
g
ic định đề


p

p
(2)
g

pp
 Biểu thức định đề (propositional formula)…
Nế S
àS
là á biể thứ thì (S
S
) ũ là ột

Nế
u
S
1
v
à

S
2

c
á
c
biể
u
thứ
c,
thì

(S
1


S
2
)
c
ũ
ng

m
ột

biểu thức (Phép kết hợp / và)
 Nếu S
1
và S
2
là các biểu thức, thì
(
S
1
∨ S
2
)
cũn
g
là m

t
1
2
(

1
2
) g ộ
biểu thức (Phép tuyển / hoặc)
 Nếu S
1
và S
2
là các biểu thức, thì (S
1
⇒ S
2
) cũng là một
biểuthức (Phép
suy ra
/
kéo theo
)
biểu

thức

(Phép

suy

ra
/

kéo


theo
)
 Nếu S
1
và S
2
là các biểu thức, thì (S
1
⇔ S
2
) cũng là một
biểu thức (Phép tương đương)
 Không gì khác (các dạng trên) là một biểu thức
13
Trí tuệ nhân tạo

p

p
của lo
g
ic định đề

Ví dụ
pp
g
 p
 q
 r

t

t
rue
 false
 ¬p
 (¬p) ∧ true
((
p)
false)
 ¬
((
¬
p)

false)
 (¬p) ⇒ (¬((¬p) ∨ false))
(p
(q
r))

(p
q)
(p
r)

(p

(q


r))


(p


q)

(p


r)
14
Trí tuệ nhân tạo
T
hứ
t
ựưu tiên của các toán
t
ử lo
g
ic
g
 Thứ tự ưu tiên của các toán tử logic (từ cao xuống thấp)
 ¬, ∧, ∨, ⇒, ⇔
 Sử dụng cặp ký tự “()” để xác định mức độ ưu tiên
Các ví dụ

Các




dụ
 p ∧ q ∨ r tương đương (p ∧ q) ∨ r – chứ không phải p ∧ (q ∨ r)

¬
p

qtương đương (
¬
p)

q

chứ không phải
¬
(p

q)

¬
p


q

tương

đương


(
¬
p)


q

chứ

không

phải

¬
(p


q)
 p ∧¬q ⇒ r tương đương (p ∧ (¬q)) ⇒ r – chứ không phải
p ∧ (¬(q ⇒ r)) hoặc p ∧ ((¬q) ⇒ r)
15
Trí tuệ nhân tạo
Lo
g
ic định đề

N
g
ữ n
g

hĩa (1)
g
g
g
 Vớimột mô hình (model) cụ thể, nó sẽ xác định giá trị
đún
g
/
sai cho mỗik
ý
hi

u đ

nh đề
g
ý


 Ví dụ: Với 3 ký hiệuS
1
, S
2
và S
3
, thì có thể lấyvídụ
mộtmôhìnhm
1
xác định như sau:
(S

i
S
đú
S
i
)
m
1

(S
1
=sa
i
,
S
2
=
đú
ng,
S
3
=sa
i
)
 Với 3 ký hiệu định đề như ví dụ trên, có thể chỉ ra 8 mô
hình

thể
hình


thể
16
Trí tuệ nhân tạo
Lo
g
ic định đề

N
g
ữ n
g
hĩa (2)
g
g
g
 Ngữ nghĩacủamộtmôhìnhm = Các quy tắc để đánh giá
g
iá tr

chân l
ý

(
đún
g/
sai
)
củacácm

nh đề tron

g
mô hình
g

ý( g
)

g
m đó
¬S
1
là đúng, khi và chỉ khi S
1
là sai
S

S

đúng
khi

chỉ
khi
S

đúng

S

đúng

S
1

S
2

đúng
,
khi

chỉ
khi
S
1

đúng


S
2

đúng
S
1
∨ S
2
là đúng, khi và chỉ khi S
1
là đúng hoặcS
2

là đúng
S
1
⇒ S
2
là đúng, khi và chỉ khi S
1
là sai hoặcS
2
là đúng
là sai, khi và ch

khi S
1
là đúng và S
2
là sai
S
1
⇔ S
2
là đúng, khi và chỉ khi S
1
⇒S
2
là đúng và S
2
⇒S
1
là đúng


d
Với
ô
hì h
h
í
d
ê







d
ụ:
Với
m
ô

n
h
m
1
n
h
ư trong v
í

d
ụ tr
ê
n, t

g

tr

c

a
biểuthức logic định đề sau sẽ là:
¬S
1
∧ (S
2
∨ S
3
) = đúng ∧ (đúng ∨ sai) = đúng ∧ đúng = đúng
17
Trí tuệ nhân tạo
Ngữ nghĩa của logic định đề – Ví dụ (1)
 Xét mô hình m
1

(p=đúng, q=sai), ta có ngữ nghĩa (giá
tr

lo

g
ic
)
của các biểu thức sau
ị g)
 ¬p là sai
 ¬q là đúng
 p ∧ q là sai
 p ∨ q là đúng
p

qlà
sai

p


q



sai
 q ⇒ p là đúng

p

q
là sai
p
q

 ¬p ⇔ q là đúng
18
Trí tuệ nhân tạo
Ngữ nghĩa của logic định đề – Ví dụ (2)
 Xét mô hình m
2

(p=sai, q=đúng), ta có ngữ nghĩa (giá
tr

lo
g
ic
)
của các biểu thức sau
ị g)
 ¬p là đúng
 ¬q là sai
 p ∧ q là sai
 p ∨ q là đúng
p

qlà
đúng

p


q




đúng
 q ⇒ p là sai

p

q
là sai
p
q
 ¬p ⇔ q là đúng
19
Trí tuệ nhân tạo
Bản
g
chân lý đối
v
ới các toán
t
ử lo
g
ic
g
g
S
S
S
S
Λ

S
S
VS
S

S
S

S
S
1
S
2
¬
S
1
S
1
Λ
S
2
S
1
VS
2
S
1

S
2

S
1

S
2
sai sai đúng sai sai đúng đúng
sai đúng đúng sai đúng đúng sai
đúng sai sai sai đúng sai sai
đúng đúng sai đúng đúng đúng đúng
20
Trí tuệ nhân tạo
T
ươn
g
đươn
g
lo
g
ic
g
gg
 Hai mệnh đề được gọi là tương đương logic khi và chỉ khi hai
m

nh đề nà
y
luôn đún
g
tron
g

cùn
g
mô hình: α ≡ ß khi và chỉ
ệ y ggg
khi α╞ β và β╞ α
21
Trí tuệ nhân tạo
Biểu diễn bằn
g
lo
g
ic định đề

Ví dụ
gg
 Giả sử chúng ta có các định đề sau

p


Chiều nay
trời
nắng


p


Chiều


nay

trời
nắng
 q ≡ “Thờitiếtlạnh hơn hôm qua”
 r ≡ “Tôi sẽđibơi”

Tôi

đi
đá


 s ≡

Tôi
s

đi
đá

ng

 t ≡ “Tôi sẽ vềđến nhà vào buổitối”

Biểu
diễn
các
phát
biểu

trong
ngôn
ngữ
tự
nhiên

Biểu
diễn
các
phát
biểu
trong
ngôn
ngữ
tự
nhiên
 “Chiều nay trời không nắng và thờitiếtlạnh hơn hôm qua”: ¬p ∧ q
 “Tôi sẽđibơi nếunhư chiều nay trờinắng”: p → r

Nế
tôi
(

)
khô
đi
b i
thì
tôi


đi
đá




Nế
u
tôi
(
s

)

khô
n
g
đi
b
ơ
i
thì
tôi
s

đi
đá

ng


:
¬
r → s
 “Nếutôi(sẽ) đi đá bóng thì tôi sẽ về nhà vào buốitối”: s → t
22
Trí tuệ nhân tạo
Mâu thuẫn và Tautolo
gy
g
 Một biểuthức logic định đề luôn có giá trị sai (false) trong
mọi
phép
diễn
giải
(
mọi

hình
)
thì
được
gọi

một
mọi
phép
diễn
giải
(
mọi


hình
)

thì
được
gọi

một
mâu thuẫn (contradiction)
 Ví dụ: (p ∧¬p)
 Một biểuthức logic định đề luôn có giá trịđúng (true)
trong mọi phép diễngiải(mọi mô hình) thì đượcgọilà
ột
ttl
m
ột
t
au
t
o
l
ogy
 Ví dụ:(p ∨¬p)
(p

q)

(
p


q)
¬
(p


q)


(
¬
p


¬
q)
¬(p ∨ q) ↔ (¬p ∧¬q)
23
Trí tuệ nhân tạo
Tính thỏa mãn được và Tính đúng đắn
 Một biểuthức logic định đề là thỏamãnđược
(
satisfiable
)
,
nếubiểuthức đó đún
g
tron
g
m


tmômình
(
)
,
g
g

nào đó
 Ví dụ: A ∨ B, A ∧ B
Một
biể
thứ

khô
thể
thỏ
ã
đ

Một

biể
u
thứ
c

khô
ng
thể

thỏ
am
ã
n
đ
ược
(unsatisfiable), nếu không tồntạibấtkỳ mô hình nào mà
trong đóbiểuthứclàđúng

d
A
A



d
ụ:
A
∧¬
A
 Một biểuthứclàđúng đắn (valid), nếubiểuthức đúng
trong
mọi

hình
trong
mọi

hình
 Ví dụ: đúng; A ∨¬A; A ⇒ A; (A ∧ (A ⇒ B)) ⇒ B

24
Trí tuệ nhân tạo
Bài toán chứn
g
minh lo
g
ic
gg
 Vớimộtcơ sở tri trức(mộttậpcácmệnh đề) KB và một
mệnh
đề
α
cần
chứng
minh (
gọi

một
định
lý)
mệnh
đề
α
cần
chứng
minh

(
gọi


một
định
lý)
 Cơ sở tri thức KB có bao hàm (về mặtngữ nghĩa)
α
hay
khôn
g
: KB


α
?
g

 Nói cách khác,
α
có thểđượcsuyra(đượcchứng minh) từ cơ sở
tri thức KB hay không?

hỏi
đặt
ra
Liệ

tồn
tại
một
thủ
t c

(
s
diễn
)



u
hỏi
đặt
ra
:
Liệ
u

tồn
tại
một
thủ
t

c
(
s
uy
diễn
)


thể giải quyết được bài toán chứng minh logic, trong một

số hữu hạncácbước?



Đố
ivới logic định đ

, câu trả lờilàcó!
25
Trí tuệ nhân tạo

×