Trong thực tế khi giải quyết một vấn đề người ta thường phải vận dụng một sốhiểu biết tri thức, kinh nghiệm nào đó có liên đến các yếu tố đang được xem xét vàchính việc áp dụng như
Trang 1Bài báo cáo môn:
BIỂU DIỄN TRI THỨC & ỨNG DỤNG
Đề tài:
Mạng tính toán và ứng dụng trên bài toán tam giác
GVHD: PGS.TS Đỗ Văn Nhơn Học viên thực hiện: Võ Tấn Lực MSHV: CH1301098
Lớp cao học khóa 8
TP Hồ Chí Minh, tháng 03/2014
Trang 2Hiện nay việc ứng dụng công nghệ thông tin (CNTT) trong ngành giáo dục lànhu cầu tất yếu để theo kịp xu hướng phát triển của thế giới Các chương trình đàotạo ứng dụng CNTT hướng tới người học nhiều hơn, giúp tăng cường tính chủ độngtrong học tập và nghiên cứu, góp phần tạo nên hứng thú học tập cho học sinh - sinhviên Trong giáo dục nói riêng và các lĩnh vực khoa học nói chung, Toán học luôn
là một ngành có vai trò khá quan trọng Vì vậy ứng dụng công nghệ thông tin trongtoán học sẽ mang lại ý nghĩa vô cùng to lớn
Trong thực tế khi giải quyết một vấn đề người ta thường phải vận dụng một sốhiểu biết (tri thức, kinh nghiệm) nào đó có liên đến các yếu tố đang được xem xét vàchính việc áp dụng những tri thức đã có này có thể giúp ta suy ra được yếu tố cầntìm hoặc cũng có thể nó tạo thêm được một số yếu tố mới để từ đó có thể dẫn tớiđược cái yếu tố mà ta đang cần
Trong phạm vi bài tiểu luận này, tôi sẽ trình bày một số phương pháp biểudiễn tri thức và ứng dụng của mạng tính toán trong giải bài toán tam giác
Tôi chân thành tỏ lòng biết ơn PGS TS Đỗ Văn Nhơn, người đã cung cấp chotôi các kiến thức cơ bản ban đầu để có thể tìm hiểu sâu thêm trong lĩnh vực Biểudiễn tri thức
Trang 3Nội dung
Chương I Khái niệm tri thức và biểu diễn tri thức 2
1.1 Khái niệm 2
1.2 Phân loại tri thức 2
1.3 Khái niệm biểu diễn tri thức 2
1.4 Các tiêu chuẩn đánh giá một phương pháp biểu diễn tri thức 3
1.5 Công cụ cho việc biểu diễn tri thức 3
1.6 Các dạng biểu diễn tri thức thường gặp 4
Chương II Vấn đề biểu diễn tri thức : 7
Chương III Mô hình mạng tính toán: 10
3.1 Định nghĩa 10
3.2 Bài toán trên mạng tính toán 11
3.3 Tính giải được của bài toán 12
3.4 Lời giải của bài toán 14
Ưu và nhược điểm của mạng tính toán 19
Chương IV Ứng dụng của mạng tính toán trong giải bài toán tam giác 20
Chương V Kết luận & Hướng phát triển đề tài 24
5.1 Kết luận : 24
5.2 Hướng phát triển đề tài: 24
Tài liệu tham khảo 25
Trang 4Chương I Khái niệm tri thức và biểu diễn tri thức
1.1 Khái niệm
Là sự hiểu biết thông qua các quá trình nhận thức phức tạp như: quá trình tri giác, quá trình học tập, tiếp thu, quá trình giao tiếp, quá trình tranh luận, quá trình lýluận, hay kết hợp các quá trình này
1.2 Phân loại tri thức
Tri thức có 2 dạng tồn tại chính là tri thức hiện và tri thức ẩn:
Tri thức hiện: là những tri thức được giải thích và mã hóa dưới dạng văn
bản, tài liệu, âm thanh, phim, ảnh,… thông qua ngôn ngữ có lời hoặc không lời, nguyên tắc hệ thống, chương trình máy tính, chuẩn mực hay các phương tiện khác Đây là những tri thức đã được thể hiện ra ngoài và dễ dàng chuyển giao, thường được tiếp nhận qua hệ thống giáo dục và đào tạo chính quy
Tri thức ẩn: là những tri thức thu được từ sự trải nghiệm thực tế, dạng tri
thức này thường ẩn trong mỗi cá nhân và rất khó “mã hóa” và chuyển giao, thường bao gồm: niềm tin, giá trị, kinh nghiệm, bí quyết, kỹ năng
Ví dụ: Trong bóng đá, các cầu thủ chuyên nghiệp có khả năng cảm nhận
bóng rất tốt; trong một siêu thị điện máy bằng việc phân tích các giao dịch người ta thấy rằng, có tới 60% độ tin cậy cho việc khách hàng khi mua máy tính thì cũng mua phần mềm diệt virus Đây là một dạng tri thức ẩn, nó nằm trong mỗi cầu thủ-
Nó không thể “mã hóa” thành văn bản, không thể chuyển giao, mà người ta chỉ có thể có bằng cách tự mình luyện tập
1.3 Khái niệm biểu diễn tri thức
Là sự diễn đạt và thể hiện của tri thức dưới những dạng thích hợp để có thể
tổ chức một cơ sở tri thức của hệ thống
Trang 51.4 Các tiêu chuẩn đánh giá một phương pháp biểu diễn tri thức
Cũng như dữ liệu, có nhiều cách khác nhau để biểu diễn tri thức trong máy tính Tuy nhiên, một phương pháp để biểu diễn tri thức phải thõa một số tiêu chuẩn nào đó Dưới đây là một số tiêu chuẩn gợi ý:
Trong suốt : hệ thống có thể giải thích những quyết định và những lời giải của nó Ví dụ như hệ luật dẫn
Trực tiếp : hệ thống không phải sử dụng các ký hiệu trung gian
Tự nhiên : phương pháp biểu diễn gần với thực tế
Hiệu quả : biểu diễn đơn giãn theo nghĩa nói ít hiểu nhiều
Thích hợp : biểu diễn được mọi tri thức có liên quan hoặc các tri thức tương tự
Đơn thể : các thành phần biểu diễn có tính độc lập và có thể được kết hợp lại
để đạt được mức cao hơn
1.5 Công cụ cho việc biểu diễn tri thức
Cấu trúc dữ liệu cơ bản: dãy, danh sách, tập hợp , mẫu,…
Cấu trúc dữ liệu trừu tượng: ngăn xếp, hàng đợi
Các mô hình toán học: đồ thị, cây
Các mô hình đối tượng
Các ngôn ngữ đặc tả tri thức
Ví dụ: Kiến thức về một tam giác cần thiết cho việc giải bài toán tam giác có
thể được biểu diễn gồm:
Một tập hợp các biến thực, mỗi biến đại diện cho một yếu tố của tam giác: a,b,c: 3 cạnh của tam giác
Trang 6A,B,C: 3 góc đối diện với 3 cạnh tương ứng trong tam giác.
ha, hb, hc: 3 đường cao tương ứng
S: diện tích tam giác
p: nửa chu vi của tam giác
R: bán kính đường tròn ngoại tiếp tam giác
r: bán kính đường tròn ngoại tiếp nội giác
1.6 Các dạng biểu diễn tri thức thường gặp
Là đưa ra những giải pháp mới để hoàn thành công việc hoặc làm cho công việc đó trở nên dễ thực hiện hơn
Tri thức thủ tục: mô tả cách thức giải quyết một vấn đề Loại tri thức này đưa ra
giải pháp để thực hiện một công việc nào đó
Trang 7Tri thức khai báo (tri thức mô tả): cho biết một vấn đề được thấy như thế nào
Loại tri thức này bao gồm các phát biểu đơn giản, dưới dạng các khẳng định logic đúng hoặc sai
Siêu tri thức: mô tả tri thức về tri thức Loại tri thức này giúp lựa chọn tri thức
thích hợp nhất trong số các tri thức khi giải quyết một vấn đề
Tri thức heuristic (Tri thức nông cạn): mô tả các “mẹo” để dẫn dắt tiến trình lập
luận Nó không bảm đảm hoàn toàn chính xác về kết quả giải quyết vấn đề
Tri thức có cấu trúc: mô tả tri thức theo cấu trúc Loại tri thức này mô tả mô hình
tổng quan hệ thống theo quan điểm của chuyên gia, bao gồm khái niệm, khái niệm con, và các đối tượng; diễn tả chức năng và mối liên hệ giữa các tri thức dựa theo cấu trúc xác định
Cấu trúc của hệ giải toán dựa trên tri thức:
Cấu trúc hệ thống :
Hình 1: Cấu trúc của một hệ giải toán thông minh.
Các thành phần chính của hệ thống trong việc giải toán: hệ giải toán thông minh có thể giải được các dạng bài toán tổng quát trong một miền tri thức
Trang 8Cơ sở tri thức (Knowledge Base): đây là trái tim của hệ thống, trong đó chứa các kiến thức cần thiết cho việc giải các bài toán.
Bộ suy diễn (mô tơ suy diễn): bộ suy diễn sẽ áp dụng kiến thức được lưu trữ trong cơ sở tri thức để giải quyết hay tìm lời giải cho các bài toán đặt ra
Sự tách biệt của bộ suy diễn và cơ sở tri thức nó mang tính độc lập tương đối
và là một tiêu chuẩn quan trọng Ta cần phải có sự tách biệt này vì:
Việc biểu diễn tri thức sẽ được thực hiện một cách tự nhiên hơn, gần gũi hơn với quan niệm của con người
Các nhà thiết kế hệ thống sẽ tập trung vào việc nắm bắt và tổ chức cơ sở tri thức hơn là phải đi vào những chi tiết cho việc cài đặt trên máy tính
Giúp tăng cường tính mô-đun hóa của phần cơ sở tri thức, bộ suy diễn và bộ phận cập nhật, hiệu chỉnh kiến thức Sự bổ sung hay loại bỏ bớt một phần biến thức
sẽ không gây ra những hiệu ứng lề cho các thành phần khác trong hệ thống
Cho phép cùng một chiến lược điều khiển và giao tiếp có thể được sử dụng cho nhiều hệ thống khác nhau
Sự tách biệt của kiến thức giải bài toán và bộ suy diễn còn giúp ta có thể thử nghiệm nhiều chiến lược điều khiển khác nhau trên cùng một cơ sở tri thức
Trang 9Chương II Vấn đề biểu diễn tri thức :
Biểu diễn tri thức đóng vai trò rất quan trọng trong thiết kế và xây dựng một
hệ giải toán thông minh và các hệ chuyên gia Phương pháp biểu diễn tri thức thích hợp sẽ tạo nên một hệ thống có trái tim khỏe mạnh Xây dựng và phát triển các phương pháp biểu diễn tri thức là một hướng nghiên cứu quan trọng cho các nhà nghiên cứu về trí tuệ nhân tạo
Các ví dụ:
Trong nhiều chủ để giải toán chúng ta thường gặp những vấn đề như sau:Cần phải thực hiện những tính toán hay suy diễn ra những yếu tố cần thiết nào đó từ một số yếu tố đã được biết trước
Để giải quyết vấn đề người ta phải vận dụng một số hiểu biết (tri thức) nào
đó về những liên hệ giữa các yếu tố đang được xem xét Những liên hệ cho phép ta
có thể suy ra được một số yếu tố từ giả thiết đã biết một số yếu tố khác
Ví dụ 1: 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 : A, B, C; 3 đường cao tương ứng : ha, hb, hc; diện tích S của tam giác; nửa chu vi p của tam giác; bán kínhđường tròn nội tiếp r của tam giác 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ố được cho trước Chẳng hạn, tính S khi biết a,
b và p
Trang 10Trong 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:
Ví dụ 2: Một vật thể có khối lượng m chuyển động thẳng với gia tốc không
thay đổi là a trong một khoảng thời gian tính từ thời điểm t1 đến thời điểm t2 Vận tốc ban đầu của vật thể là v1, vận tốc ở thời điểm cuối là v2, và vận tốc trung bình
là v Khoảng cách giữa điểm đầu và điểm cuối là s Lực tác động của chuyển động
là f Độ biến thiên vận tốc giữa 2 thời điểm là v, và độ biến thiên thời gian là t Ngoài ra còn có một số yếu tố khác nữa của chuyển động vật thể có thể được quan tâm
Trang 11Để giải những bài toán về chuyển động nầy chúng ta phải sử dụng một số công thức liên hệ giữa các yếu tố của chuyển động, chẳng hạn như:
Ví dụ 3: Trong hóa học chúng ta thường phải sử dụng các phản ứng hóa học
để điều chế các chất nầy từ các chất khác Loại vấn đề nầy cũng cho ta một dạng tương tự như trong 2 ví dụ trên : Cho trước một số chất hóa học, hãy tìm cách điều chế ra một hay một số chất nào đó
Trang 12Chương III Mô hình mạng tính toán:
Có rất 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á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
có thể thực hiện những tính toán hay suy diễn ra những yếu tố cần thiết nào đó từ một số các yếu tố đã được biết trước
Mô hình mạng tính toán là một dạng biểu diễn tri thức có thể dùng biểu diễn các tri thức về các vấn đề tính toán và được áp dụng một cách có hiệu quả để giải một số dạng bài toán Mỗi mạng tính toán là một mạng ngữ nghĩa chứa các biến và những quan hệ có thể cài đặt và sử dụng được cho việc tính toán Có thể nói mạng tính toán là một sự tổng quát hóa của kiểu dữ liệu trừu tượng, có khả năng tự xây dựng các hàm dùng cho việc tổng hợp thành các chương trình
2.
3.1 Định nghĩa
Mạng tính toán là một cấu trúc (M,F), trong đó:
M = {x1, x2,…,xm} tập hợp các biến đơn trong miền xác định tương ứng D1, D2,…,Dm
F = {f1, f2,…,fm} tập các quan hệ tính toán trên các biến trong tập M Mỗi quan hệ tính toán f F có các dạng sau:
Một phương trình trên một số biến trong M hoặc
Luật f : u(f) v(f) trong đó u(f), v(f) là các tập con khác rỗng của M hay M(f) M thỏa : M(f) = u(f) v(f)
Ví dụ 1: Để tính các yếu tố của một tam giác ABC ta có thể đưa bài toán về dạng
mô hình mạng tính toán (M, F) với:
M = {A, B, C, a, b, c, S, p, R, r, ha, hb, hc,…} là tập tất cả các thuộc tính
Trang 13F = {f1, f2, f3, f4, f5, f6, f7, f8, f9 } là tập các quan hệ.
f1 : A + B + C = p
f2 :
a sin A =
b sin B
f3 :
c sin C=
b sin B
f4 :
a sin A=
c sinC
3.2 Bài toán trên mạng tính toán
Cho một mạng tính toán K = (M, F) , M là tập các biến và F là tập các quan
hệ Giả sử có một tập biến A M đã được xác định (tức là tập gồm các biến đã biếttrước giá trị), và B là một tập biến bất kỳ trong M
Định nghĩa 3.1
Trang 14Bài toán A B được gọi là giải được khi có thể tính toán được giá trị các biến
thuộc B xuất phát từ giả thiết A Ta nói rằng một dãy các quan hệ f1, f2, , fk F
là một lời giải của bài toán A B nếu như ta 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ẽ tính được các biến thuộc B Lời giải f1,
f2, , fk đượ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
Việc tìm lời giải cho bài toán là việc tìm ra một dãy quan hệ để có thể áp dụng suy
ra được B từ A Điều nầy cũng có nghĩa là tìm ra được một quá trình tính toán để giải bài toán
Định nghĩa 3.2
Cho D = f1, f2, , fk là một dãy quan hệ của mạng tính toán (M,F), A là một tập
con của M Ta nói dãy quan hệ D 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ệ f1, f2, , fk xuất phát từ giả thiết A
Nhận xét : Trong định nghĩa trên, nếu đặt : A0 = A, A1 = A0 M(f1), , Ak = Ak-1
M(fk), và ký hiệu Ak là D(A), thì ta có D là một lời giải của bài toán A D(A)
Trong trường hợp D là một dãy quan hệ bất kỳ (không nhất thiết là áp dụng được trên A), ta vẫn ký hiệu D(A) là tập biến đạt được khi lần lượt áp dụng các quan hệ trong dãy D (nếu được) Chúng ta 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
Giải quyết vấn đề:
3.3 Tính giải được của bài toán
Trong mục nầy chúng ta nêu lên một khái niệm có liên quan đến tính giải được của vấn đề trên một mạng tính toán : bao đóng của một tập hợp biến trên một mạng tính toán
Định nghĩa 3.4: Cho mạng tính toán (M,F), và A là một tập con của M Ta có thể
thấy rằng có duy nhất một tập hợp B lớn nhất M sao cho bài toán A B là giải
Trang 15trực quan, có thể nói bao đóng của A là sự mở rộng tối đa của A trên mô hình
(M,F) Ký hiệu bao đóng của A là A , chúng ta có định lý sau đây:
Định lý 3.1: Trên một mạng tính toán (M,F), bài toán A B là giải được khi và chỉ
khi B A
Từ định lý nầy, ta có thể kiểm tra tính giải được của bài toán A B bằng cách tính
bao đóng của tập A rồi xét xem B có bao hàm trong A hay không.
Định lý 3.2: Cho một mạng tính toán (M,F), A, B là hai tập con của M Ta có các
điều sau đây là tương đương:
(1) B A
(2) Có một dãy quan hệ D = f1, f2, , fk F thỏa các điều kiện:
(a) D áp được trên A
(b) D(A) B
Chứng minh : Giả sử có (1), tức là B A Khi đó bài toán A B là giải được
Do đó có một dãy quan hệ f1, f2, , fk F sao cho khi ta 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ẽ tính được các biến thuộc B Dễ dàng thấy rằng dãy f1, f2, , fk nầy thỏa các điều kiện (2)
Đảo lại, giả sử có (2) Với các điều kiện có được bởi (2) ta thấy fi là lời giải của vấn đề Ai-1 Ai, với mọi i = 1,2, , k Từ mệnh đề 3.2 suy ra bài toán A0 Ak là
giải được Do đó bài toán A B cũng giải được, suy ra B A theo định lý 3.1.
Qua các định lý trên, ta thấy rằng việc xác định bao đóng của một tập biến trên mô hình tính toán là cần thiết Dưới đây là thuật toán cho phép xác định bao đóng của tập hợp A M Trong thuật toán nầy chúng ta thử áp dụng các quan hệ f F để tìmdần những biến thuộc M có thể tính được từ A; cuối cùng sẽ được bao đóng của A
Thuật toán 3.1: tìm bao đóng của tập A M :