Tải bản đầy đủ (.doc) (12 trang)

Tiểu luận MÔN BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG GIẢI TOÁN TAM GIÁC VÀ HÌNH CHỮ NHẬT

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 (196.65 KB, 12 trang )

LỜI CẢM ƠN
Em xin gửi lời cảm ơn chân thành đến PGS.TS. Đỗ Văn Nhơn, người đã truyền
đạt những kiến thức quý báu không chỉ là lý thuyết mà Thầy còn hướng dẫn cách thức
tìm hiểu, phân tích và vận dụng lý thuyết về biểu diễn tri thức để xây dựng các mô hình
và tạo các ứng dụng hữu ích dựa trên các miền tri thức cụ thể. Em xin chân thành cảm ơn
Thầy vì sự hướng dẫn của Thầy trong quá trình thực hiện báo cáo này.
Em xin chân thành cảm ơn Phòng Đào tạo sau Đại học đã tạo mọi điều kiện để em
hoàn thành báo cáo này.
Xin chân thành cảm ơn sự giúp đỡ của các anh chị, bạn bè và những người đã
thường xuyên trao đổi, thảo luận và đóng góp ý kiến cho tôi về các vấn đề liên quan trong
thời gian qua.
Học viên thực hiện
Lê Thanh Trọng
BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG
MỤC LỤC
PHẦN I: GIỚI THIỆU VẤN ĐỀ BIỂU DIỄN TRI THỨC 3
2
BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG
PHẦN I: GIỚI THIỆU VẤN ĐỀ BIỂU DIỄN TRI THỨC
1.1. Giới thiệu
Với sự phát triển không ngừng của máy tính kết hợp với những thành tựu rực rỡ
ngành trí tuệ nhân tạo thì vấn đề “Biểu diễn tri thức và tạo ứng dụng” hiện đang là một
lĩnh vực nghiên cứu sâu rộng trong chuyên ngành công nghệ thông tin và đã đạt được
những thành tựu nhất định. Nhiều mô hình biểu diễn tri thức đã được xây dựng trong các
lĩnh vực như: Vật lý, Hóa học, Xây dựng, Kinh doanh,… Một trong số những lĩnh vực
được nghiên cứu rộng rãi có thể kể đến là toán học. Việc giải bài toán tự động là một nhu
cầu hết sức thực tế và hữu ích hiện nay. Đó là nguyên do chính dẫn đến vấn đề cần tìm
hiểu và giải quyết của báo cáo này. Vì toán học bao gồm rất nhiều thành phần nên trong
phạm vi của bài báo cáo này sẽ đi vào tìm hiểu về phương pháp biểu diễn và xử lý tri
thức trong việc giải bài toán tam giác và hình chữ nhật.
Tri thức là những hiểu biết của con người về một vài đề tài, phạm vi, lĩnh vực nhất


định. Diễn giải rõ hơn, tri thức gồm nhiều thành phần, với những liên hệ đa dạng như:
 Hệ thống các khái niệm.
 Các quan hệ
 Các sự kiện
 Các luật
 …
Để một hệ thống có được các tri thức và xử lý tri thức như một chuyên gia, trước
tiên chúng ta phải tìm ra phương pháp biểu diễn những tri thức này. Biểu diễn tri thức là
đưa ra các cấu trúc, mô hình để mã hóa tri thức nhằm tổ chức, lưu trữ và sử dụng tri thức.
Trong cấu trúc của một hệ giải toán dựa trên tri thức, hai thành phần chính cần phải
có là cơ sở tri thức và bộ suy diễn. Để giải quyết được một vấn đề (bài toán) người ta
phải vận dụng một số hiểu biết (tri thức) nào đó về các liên hệ giữa những yếu tố cho
trước. Những liên hệ đó sẽ là những căn cứ cho phép ta tạo ra các duy diễn cần thiết để
có thể giải quyết được bài toán.
Đã có nhiều phương pháp biểu diễn tri thức được nghiên cứu và đề xuất. Tuy nhiên
mỗi phương pháp đề chỉ thể hiện được một khía cạnh nào đó của tri thức và có những
nhược điểm nhất định. Do đó ta cần xây dựng và phát triển các mô hình biểu diễn tri thức
3
BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG
giúp thiết kế và cài đặt phần tri thức cũng như phần suy diễn của các hệ giải toán dựa trên
tri thức.
Một số kĩ thuật phổ biến để biểu diễn tri thức bao gồm:
 Bộ ba Đối tượng – Thuộc tính – Giá trị (O-A-V).
 Các luật dẫn (Production Rule).
 Mạng ngữ nghĩa (Semantic Network).
 Frames.
 Logic (Propositional logic & Predicate logic).
1.2. Ví dụ
Giả sử chúng ta đang quan tâm đến một số yếu tố trong một tam giác, chẳng hạn 3
cạnh a, b, c; 3 góc tương ứng với 3 cạnh là α, β, γ; 3 đường cao tương ứng là ha, hb, hc;

diện tích S; nửa chu vi p; bán kính đường tròn nội tiếp r.
Giữa 12 yếu tố trên có các công thức thể hiện những mối quan hệ giúp ta có thể giải
quyết được một số vấn đề tính toán đặt ra như: Tính một yếu tố tự một số yếu tố cho
trước. Chẳng hạn tính S khi biết a, b và p.
Trong tam giác chúng ta có thể kể ra một số quan hệ dưới dạng công thức sau đây:
• Liên hệ giữa 3 góc trong tam giác:
α + β + γ = π
• Định lý cosin :
a
2
= b
2
+ c
2
- 2.b.c.cosα
b
2
= a
2
+ c
2
- 2.a.c.cosβ
c
2
= a
2
+ b
2
- 2.a.b.cosγ
• Định lý Sin:

• Liên hệ giữa nửa chu vi và 3 cạnh:
2.p = a + b + c
• Một số công thức diện tích:
S = a.h
a
/2; S = b.h
b
/2; S = c.h
c
/2;
S = p.r
• Công thức tính diện tích theo 3 cạnh (công thức Heron):
4
γβα
sin
c

sin
b
sin
a
==
c)b)(pa)(pp(p
−−−=
S
BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG
PHẦN II: TIẾP CẬN VÀ GIẢI QUYẾT VẤN ĐỀ
2.1. Vấn đề biểu diễn tri thức
Trong cấu trúc của một hệ giải toán dựa trên tri thức, 2 thành phần trung tâm là cơ
sở tri thức và bộ suy diễn dựa trên tri thức. Có nhiều phương pháp biểu diễn tri thức, mỗi

phương pháp phù hợp với từng đặc tính của bài toán.
Trong nhiều chủ đề giải toán thường gặp những vấn đề đặt ra dưới dạng sau:
- Cần phải thực hiện những tính toán hay suy diễn ra một số yếu tố từ các yếu tố đã
biết.
- Để giải quyết vấn đề người ta phải vận dụng một số tri thức nào đó về những liên
hệ giữa các yếu tố được xem xét. Những liên hệ cho phép ta suy ra một số yếu tố từ giả
thiết gồm các yếu tố đã biết.
Vì vậy mô hình tri thức của một hệ giải toán tự động mang dáng vấp của một
phương pháp biểu diễn tri thức quen thuộc: hệ luật dẫn (Production Rule).
Tuy nhiên, hệ luật dẫn là một hệ được mô phỏng :
P
1
^ P
2
^ ^ P
n
Q.
tức là sự hiện diện cần thiết của n sự kiện P ta sẽ suy luận ra được Q. Chính vì thế
hệ luật dẫn phù hợp với bài toán nhận xét, kiểm tra hơn là một bài toán trong đó tồn tại
những thao tác tính toán. Chúng ta sẽ tìm hiểu một mô hình biểu diễn tri thức phù hợp
hơn cho hệ giải toán tự động: mạng suy diễn – tính toán.
2.2. Mạng suy diễn - tính toán:
2.2.1. Giới thiệu:
Nhận thấy có nhiều vấn đề trong các lĩnh vực khác nhau đặt ra dưới dạng một
“mạng” của các yếu tố, trong đó giữa các yếu tố có những mối liên hệ (hay quan hệ) cho
phép ta suy ra được một số yếu tố này từ một số yếu tố khác.
Mô hình mạng suy diễn – tính toán là một sự khái quát dạng tri thức trên có thể
dùng để biểu diễn tri thức và thiết kế các chương trình giải toán tự động.
2.2.2. Các định nghĩa
2.2.2.1. Quan hệ suy diễn

Cho M = {x
1
,x
2
, ,x
m
} là một tập hợp các biến có thể lấy giá trị trong các miền xác
định D
1
, D
2
, ,D
m
. Mỗi quan hệ suy diễn R trên M được xác định bởi một (hay một số)
ánh xạ có dạng:
f
R,u,v
: D
u
→ D
v
,
5
BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG
trong đó u,v là các bộ biến được phân chia từ bộ biến x = <x
1
,x
2
, ,x
m

>; D
u
và D
v

tích của các miền xác định tương ứng của các biến trong u và trong v
.
.
Quan hệ suy diễn R(x) có thể được biểu diễn bởi một (hay một số) ánh xạ f
R,u,v
và ta
viết vắn tắt là:
f : u ⇒ v.
Cách ký hiệu trên bao hàm ý nghĩa như một luật suy diễn: ta có thể xác định hay
suy ra được các biến thuộc v khi biết các biến thuộc u.
Quan hệ là đối xứng và có hạng k khi quan hệ đó giúp ta có thể tính được k biến bất
kỳ từ m-k biến kia (ở đây x là bộ gồm m biến < x1,x2, ,xm >).
2.2.2.2. Mạng suy diễn
Mạng suy diễn, viết tắt là MSD, là một cấu trúc (M,F) gồm 2 tập hợp:
M = {x
1
,x
2
, ,x
n
}, là tập hợp các thuộc tính hay các biến lấy giá trị trong các miền
xác định nào đó.
F = {f
1
,f

2
, ,f
m
}, là tập hợp các luật suy diễn có dạng:
f : u(f) → v(f)
trong đó u(f) và v(f) là các tập hợp con khác rỗng của M sao cho
u(f) ∩ v(f) = ∅.
Ký hiệu: M(f) = u(f) ∪ v(f).
2.2.3. Một số khái niệm và kí hiệu
2.2.3.1. Định nghĩa tính áp dụng được của luật
Một luật suy diễn u → v được được gọi là áp dụng được trên A khi
u ⊂ A.
Một quan hệ suy diễn được gọi là áp dụng được trên A khi nó xác định một luật suy
diễn áp dụng được trên A.
6
BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG
Dãy D = [f
1
, f
2
, , f
k
] các quan hệ suy diễn (hay luật suy diễn) của mạng suy diễn
(M,F) được nói là áp dụng được trên tập A khi và chỉ khi ta có thể lần lượt áp dụng được
các quan hệ f
1
, f
2
, , f
k

xuất phát từ giả thiết A.
Ký hiệu:
Với D = {f
1
, f
2
, , f
k
}
Đặt: A
0
= A, A
1
= A
0
∪ M(f
1
), . . . , A
k
= A
k-1
∪ M(f
k
), và ký hiệu A
k
là D(A). Có thể
nói rằng D(A) là sự mở rộng của tập A nhờ áp dụng dãy quan hệ D.
2.2.3.2. Định nghĩa lời giải:
D = {f
1

, f
2
, , f
k
} là một lời giải của bài toán A → B khi lần lượt áp dụng các quan
hệ fi (i=1, ,k) xuất phát từ giả thiết A thì sẽ suy ra được các biến thuộc B. Nói cách khác
D là một lời giải của bài toán khi
D(A) ⊃ B.
Bài toán A → B là giải được khi nó có một lời giải.
Lời giải {f
1
, f
2
, , f
k
} được gọi là lời giải tốt nếu không thể bỏ bớt một số bước tính
toán trong quá trình giải, tức là không thể bỏ bớt một số quan hệ trong lời giải.
Lời giải ngắn nhất: có số bước suy diễn thấp nhất.
2.2.4. Quá trình đi tìm lời giải
Dãy quan hệ suy diễn D là một lời giải của bài toán A → B khi và chỉ khi D áp
dụng được trên A và D(A) ⊇ B.
⇒ Để tìm một lời giải ta có thể làm như sau: xuất phát từ giả thiết A, ta thử áp
dụng các quan hệ để mở rộng dần tập các biến được xác định (được biết); và quá trình
nầy tạo ra một sự lan truyền tính xác định trên tập các biến cho đến khi đạt đến tập biến
B.
- Thuật toán tìm một lời giải của bài toán A -> B.
1. Solution ¬ empty;
// Solution là dãy các quan hệ sẽ áp dụng
2. if B ⊆ A then
begin

Solution_found ¬ true;
// biến Solution_found = true khi
// bài toán là giải được
7
BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG
goto bước 4;
end
else
Solution_found ¬ false;
3. Repeat
Aold ¬ A; Chọn ra một f ∈ F chưa xem xét;
while not Solution_found and (chọn được f) do
begin
if ( f đối xứng and 0 < Card (M(f) \ A) ≤ r(f) ) or
(f không đối xứng and ∅ ≠ M(f) \ A ⊆ v(f)) then
begin
A ¬ A ∪ M(f);
Solution ¬ Solution ∪ {f};
end;
if B ⊆ A then
Solution_found ¬ true;
Chọn ra một f ∈ F chưa xem xét;
end; { while }
Until Solution_found or (A = Aold);
4. if not Solution_found then
Bài toán không có lời giải;
else
Solution là một lời giải;
2.2.5. Thuật toán tìm một lời giải tốt:
Giả sử {f

1
, f
2
, , f
m
} là một lời giải của bài toán A→ B. Tìm một lời giải tốt cho bài
toán.
1. D


{
f
1
, f
2
, , f
m
}
;
2. for i=m downto 1 do
8
BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG
if D \
{
f
i
}
là một lời giải then
D


D \
{
f
i
}
;
3. D là một lời giải tốt.
Lưu ý: Ta có thể tìm một lời giải tốt từ một lời giải biết trước bằng cách lần lượt
xem xét các quan hệ trong tập lời giải đã biết và chọn ra các quan hệ để đưa vào

một lời
giải mới sao cho trong lời giải mới nầy không thể bớt ra bất kỳ một quan hệ nào.
2.3. Mô hình bài toán
2.3.1. Tập sự kiện
Là những thuộc tính về đường tròn và hình chữ nhật, các biến này có giá trị thuộc
tập các số thực dương.
 Đường tròn:
- Tâm I(a, b).
- r : bán kính.
- d : đường kính.
- S : diện tích.
- P : chu vi.
- X(x, y) : một điểm nằm trên đường tròn.
 M = {a, b, r, d, S, P, x, y}
 Hình chữ nhật:
- d : chiều dài.
- r : chiều rộng.
- ch : chiều dài đường chéo.
- S : diện tích.
- C : chu vi.

 M = {d, r, ch, S, C}.
2.3.2. Tập các luật suy diễn
Là các quan hệ tính toán giữa các biến
 Đường tròn:
r
1
: r =
r
2
: x = + a
r
3
: y = + b
9
BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG
r
4
: a = x -
r
5
: b = y -
r
6
: r =
r
7
: d = r*2
r
8
: S =

r
9
: r =
r
10
: P = 2* *r
r
11
: r =
 Hình chữ nhật
10
BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG
2.4. Mô hình suy diễn
x
1
x
2
x
n

Hình 2.1 Một mô hình suy diễn thông dụng
Ý nghĩa: các thuộc tính được tổ chức dưới dạng danh sách, ta sẽ lưu trữ và tiến hành
suy diễn dưạ trên các index của chúng.
2.5. Mô hình suy diễn cho nhiều đối tượng:
Trong thực tế, có rất nhiều bài toán không chỉ đơn giản tìm một thuộc tính từ các
thuộc tính đã có của một đối tượng. Một mô hình mới được đưa ra dựa trên sự kế thừa từ
mô hình suy diễn thông thường cho phép chúng ta suy diễn bên trong nhiều đối tượng và
quan hệ giữa chúng.
Ví dụ: cho 2 đường tròn C1, C2
C1.d = 6;

C1.r = 2C2.r;
Tìm C2.S?
Ta thấy bài toán có 2 đối tượng đường tròn C1, C2 và một quan hệ C1.r = 2C2.r.
Và tương tự như thế với m đối tượng, n quan hệ.
Mô hình sau đây mô tả cho quá trình suy diễn với nhiều đối tượng và quan hệ.
11
M
Rule
Suppose
Conclusion
Quá
trình
suy
diễn
Object 1
Relations
Object 2
Object n
Suy diễnSuy diễn
Suy
diễn
BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG
Hình 2.2 Mô hình suy diễn cho nhiều đối tượng
Ý nghĩa: quá trình suy diễn diễn ra đồng thời ở mỗi đối tượng và quan hệ giữa chúng. Mô
hình suy diễn này tương tự như hình 1.a.
2.6. Chương trình, nhận xét và đánh giá
- Giao diện chương trình
- Biểu diễn tri thức và suy diễn thành công trên nhiều đối tượng (cùng loại) với các
quan hệ giữa chúng.
- Vẫn chưa thực hiện được việc tính toán với các trường hợp cần giải hệ phương

trình.
TÀI LIỆU THAM KHẢO
[1] Slide “Biểu diễn tri thức và giải toán tự động”, thầy Đỗ Văn Nhơn.
[2] Slide “Mạng suy diễn – tính toán”, thầy Đỗ Văn Nhơn.
[3] Giáo trình “Các hệ cơ sở tri thức”, thầy Hoàng Kiếm, thầy Đỗ Văn Nhơn, thầy
Đỗ Phúc
[4] Giáo trình “Trí tuệ nhân tạo”, thầy Hoàng Kiếm, thầy Đinh Nguyễn Anh Dũng.
12

×