Gần đây, trong [7], [8], [9] đã ứng dụng COKB để giải toán tự động những bài toán về hình học phẳng ở bậc trung học cơ sở dựa trên tập các bài toán mẫu, ứng dụng này thể hiện được cách
Trang 1BÁO CÁO LUẬN VĂN THẠC SĨ NGÀNH KHOA HỌC MÁY TÍNH
NGHIÊN CỨU MỘT MÔ HÌNH COKB THU HẸP
và GIẢI QUYẾT CÁC VẤN ĐỀ TRÊN THÀNH
PHẦN TRI THỨC HÀM
Thực hiện: Trần Phong Nhã
Mã học viên: CH1201121
Trang 4 Mô hình COKB đã mô hình hóa được rất nhiều cơ sở tri thức thực
tế, biểu diễn được khá đầy đủ cho một miền tri thức thực của con người như Hình học giải tích, Đại số tuyến tính, Hình học phẳng, Vật lý điện một chiều … tham khảo tại [4], [5], [6]
Trang 5 Gần đây, trong [7], [8], [9] đã ứng dụng COKB để giải toán tự động những bài toán về hình học phẳng ở bậc trung học cơ sở dựa trên tập các bài toán mẫu, ứng dụng này thể hiện được cách giải quyết vấn
đề rất gần với con người, đó là giải quyết các vấn đề mới dựa vào những vấn đề đã giải quyết trước đó Trong [4], [6] đã ứng dụng COKB để xây dựng hệ hỗ trợ giải các bài toán điện một chiều, điện xoay chiều trong chương trình THPT, tuy nhiên khả năng giải quyết vấn đề là chưa cao
Trang 6Một số hạn chế của mô hình COKB là:
Thành phần đối tượng tính toán C-object có phạm trù quá rộng
Các thành phần có thể dư thừa đối với một số lớp bài toán.
Thành phần tri thức hàm vẫn chưa hoàn thiện về cấu trúc lẫn động cơ suy diễn.
Các nghiên cứu về COKB hiện nay hầu hết đều chưa đi sâu vào giải quyết các vấn đề trên hành phần tri thức hàm, hay thu hẹp lại phạm vi của mô hình COKB đối với những miền tri thức cụ thể.
Trang 7 Dẫn đến, vấn đề đặt ra là thu hẹp bớt phạm vi của các thành phần cũng như giảm bớt thành phần trong mô hình COKB mà vẫn biểu diễn được tri thức với đầy đủ cơ sở tri thức và động cơ suy diễn Nếu làm được điều này thì việc mô hình hóa tri thức, xây dựng cơ
sở tri thức cho nhiều lớp bài toán sẽ trở nên đơn giản hơn
Từ những lý do đó, tôi đã chọn đề tài “Nghiên cứu một mô hình
COKB thu hẹp và giải quyết vấn đề trên thành phần tri thức hàm”
để làm luận văn tốt nghiệp Thạc sĩ của mình
Trang 8MỤC TIÊU CỦA ĐỀ TÀI
Nghiên cứu và đề xuất mô hình Funcs-COKB bằng việc giảm bớt độ phức tạp của mô hình COKB mà vẫn đáp ứng được các yêu cầu về mô hình hóa và biểu diễn tri thức thực tế đơn giản hơn, linh hoạt hơn trong một số miền tri thức cụ thể.
Nghiên cứu và giải quyết các vấn đề trên thành phần tri thức hàm: xử lý các sự kiện, suy diễn trên hàm, giải phương trình… từ đó xây dựng một
số thuật giải để giải quyết các vấn đề này trong một số miền tri thức cụ thể.
Xây dựng ứng dụng giải một số bài toán hình học giải tích 2 chiều trong chương trình phổ thông và đại học.
Trang 10ĐỐI TƯỢNG TÍNH TOÁN
Định nghĩa 2.1: Một đối tượng tính toán (Com-Object) là một đối tượng O có
cấu trúc bao gồm:
(1) Một tập các thuộc tính có giá trị của đối tượng O, ký hiệu là M(O)
(2) Một tập các quan hệ tính toán trên các thuộc tính của đối tượng O Các tập quan hệ tính toán này thể hiện cho khả năng suy diễn bên trong của đối tượng O như:
Cho A là một tập con của M(O) Đối tượng O có khả năng cho ta biết tập thuộc tính có thể được suy ra từ A trong đối tượng O.
Đối tượng O sẽ cho ta biết giá trị của từng thuộc tính của nó.
Đối tượng O cũng cho ta biết quá trình xác định các thuộc tính của nó.
Trang 11ĐỐI TƯỢNG TÍNH TOÁN
Cấu trúc của đối tượng tính toán được mô hình hóa bởi bộ (Attrs, F, Facts, Rules)
Trong đó:
Attrs là tập các thuộc tính của đối tượng,
F là tập các phương trình hay còn gọi là tập các quan hệ tính toán,
Facts là tập các sự kiện hay các tính chất vốn có của đối tượng, và
Rules là tập các luật suy diễn trên các sự kiện liên quan đến các thuộc tính cũng như liên quan đến bản thân của đối tượng.
Trang 12ĐỐI TƯỢNG TÍNH TOÁN
Ví dụ 2.1: Đối tượng Tam giác được biểu diễn như sau:
Attrs= {A, B, C, a, b, c, S, p, R…} là tập các thuộc tính của tam giác
F= {A+B+C=pi; p=(a+b+c)/2; S=sqrt(p(p-a)(p-b)(p-c));… } là tập các quan hệ tính toán của tam giác
Facts= {A>0; A<pi; B>0; B<pi; C>0; C<pi; a+b>c; a+c>b; b+c>a;…} là tập các sự kiện hay các tính chất vốn có của tam giác
Rules= {{A=B}<=>{a=b}; {B=C}<=>{b=c}; {a 2 = b 2 +
c 2 =>A=pi/2};…} là tập các luật của đối tượng tam giác.
Trang 13MÔ HÌNH COKB
đó kết hợp các kỹ thuật biểu diễn cấu trúc, biểu diễn thủ tục, biểu diễn mạng, biểu diễn theo đối tượng và các kỹ thuật tính toán symbolic trên máy tính
hiện sáu dạng tri thức trong thực tế gồm:
(1) Tập khái niệm về các đối tượng tính toán,
(2) Biểu đồ H thể hiện quan hệ phân cấp trên các loại đối tượng,
(3) Tập hợp R các quan hệ trên các loại đối tượng,
(4) Tập hợp Ops thể hiện tri thức về các toán tử,
(5) Tập hợp Funcs gồm các hàm và
(6) Tập hợp Rules gồm các luật.
Trang 15ĐỐI TƯỢNG TÍNH TOÁN THU HẸP
Cấu trúc của đối tượng tính toán thu hẹp được mô hình hóa bởi bộ (Attrs, F, Rules)
Trong đó:
Attrs là tập các thuộc tính của đối tượng,
F là tập các phương trình hay còn gọi là tập các quan hệ tính toán,
Rules là tập các luật suy diễn trên các sự kiện liên quan đến các thuộc tính cũng như liên quan đến bản thân của đối tượng.
Trang 16ĐỐI TƯỢNG TÍNH TOÁN THU HẸP
Ví dụ 3.1: Đối tượng Tam giác được biểu diễn như sau:
Attrs= {A, B, C, a, b, c, S, p, R…} là tập các thuộc tính của tam giác
F= {A+B+C=pi; p=(a+b+c)/2; S=sqrt(p(p-a)(p-b) (p-c));… } là tập các quan hệ tính toán của tam giác
Rules= {{A=B}<=>{a=b}; {B=C}<=>{b=c}; {a 2 = b 2 + c 2 =>A=pi/2};…} là tập các luật của đối tượng tam giác.
Trang 17MÔ HÌNH FUNCS-COKB
Mô hình cơ sở tri thức các đối tượng tính toán thu hẹp COKB) là hệ thống cơ sở tri thức gồm 5 thành phần: (C, R, Ops, Funcs, Rules)
(Funcs- (1) Tập khái niệm về các đối tượng tính toán thu hẹp
(2) Tập hợp R các quan hệ hai ngôi trên các loại đối tượng,
(3) Tập hợp Ops thể hiện tri thức về các toán tử 2 ngôi,
(4) Tập hợp Funcs gồm các hàm,
(5) Tập hợp Rules gồm các luật.
Trang 18MÔ HÌNH FUNCS-COKB
Trong mô hình COKB thì thành phần hàm chưa được làm rõ mà chỉ đặc tả cơ bản về hai dạng hàm là: hàm cơ sở và hàm tự định nghĩa Trong mô hình Funcs-COKB ta sẽ đi sâu vào việc giải quyết các vấn
đề trên hàm như: vấn đề hợp nhất các sự kiện dạng hàm, vấn đề tìm kiếm và suy diễn trên hàm, vấn đề tính toán kết quả của hàm…
Trang 19CÁC LOẠI SỰ KIỆN
Sự kiện loại 1: Sự kiện thông tin về loại của đối tượng
Cấu trúc của sự kiện: [<tên_đối_tượng>, <“loại_đối_tượng”>];
Ví dụ 3.1: [d, “DUONGTHANG”]; [M, “DIEM”];
thuộc tính của đối tượng
Cấu trúc của sự kiện:
<tên_đối_tượng>[đối_số]; hoặc
<tên_đối_tượng>[đối_số].<tên_thuộc_tính>;
Ví dụ 3.2: DOAN[A,B]; TAMGIAC[A,B,C].S;
Trang 20CÁC LOẠI SỰ KIỆN
Sự kiện loại 3: Sự kiện về tính xác định của một đối tượng hay của một thuộc
tính của đối tượng thông qua biểu thức hằng
Cấu trúc của sự kiện:
<tên_đối_tượng>[đối_số] = <biểu_thức_hằng>; hoặc
<tên_đối_tượng>[đối_số].<tên_thuộc_tính> = <biểu_thức_hằng>;
Ví dụ 3.3: DOAN[A,B] = 10 cm; TAMGIAC[A,B,C].S = 15 cm2
Sự kiện loại 4: Sự kiện về sự bằng nhau của một đối tượng hay một thuộc tính
của đối tượng với một đối tượng hay một thuộc tính khác
Cấu trúc của sự kiện:
<tên_đối_tượng>[đối_số] = <tên_đối_tượng>[đối_số]; hoặc
<tên_đối_tượng>[đối_số].<thuộc_tính> = <tên_đối_tượng>[đối_số].<thuộc_tính>;
Ví dụ 3.4: DOAN[A,B] = DOAN[B,A];
Trang 21CÁC LOẠI SỰ KIỆN
Sự kiện loại 5: Sự kiện về sự phụ thuộc giữa các loại đối tượng và các
thuộc tính của đối tượng thông qua một công thức tính toán hay một đẳng thức theo các đối tượng hoặc các thuộc tính
Cấu trúc của sự kiện:
<tên_đối_tượng>[đối_số] = <biểu thức theo các đối tượng khác>; hoặc
<tên_đối_tượng>[đối_số].<thuộc_tính> = <biểu thức theo các thuộc tính khác>;
Ví dụ 3.5: DOAN[A,B] = DOAN[A,M] + DOAN[M,B];
TAMGIAC[A,B,C].S = 2 * TAMGIAC[M,N,P].S;
Trang 22CÁC LOẠI SỰ KIỆN
thuộc tính của đối tượng
Cấu trúc của sự kiện:
[<“tên_quan_hệ”>,<tên_đối_tượng1>,<tên_đối_tượng2>]; hoặc
[<“tên_quan_hệ”>,<tên_đối_tượng1><tên_thuộc_tính>,<tên_đối_tượng2>.<tên _thuộc_tính];
[“SSONG”,TAMGIAC[A,B,C].a,TAMGIAC[M,N,P].b];
Trang 23CÁC LOẠI SỰ KIỆN
Sự kiện loại 7: Sự kiện về tính xác định của một hàm
Cấu trúc của sự kiện: <tên_hàm>(<đối_số1>,<đối_số2>…);
Sự kiện loại 9: Sự kiện về sự bằng nhau giữa một đối tượng với một hàm.
Cấu trúc sự kiện: <tên_đối_tượng>=<tên_hàm>(<đối_số1>,<đối_số2>…);
Ví dụ 3.9: M = TRUNGDIEM(A,B); A = GIAODIEM(d1, d2);
Trang 24CÁC LOẠI SỰ KIỆN
Cấu trúc của sự kiện:
<tên_hàm>(<đối_số1>,<đối_số2>…) = <tên_hàm>(<đối_số1>,<đối_số2>…);
Ví dụ 3.10: KHOANGCACH(A,B) = KHOANGCACH(A, d);
đối tượng khác thông qua một công thức tính toán
Cấu trúc của sự kiện:
<tên_hàm>(<đối_số1>,<đối_số2>…) = <biểu thức các hàm hay đối tượng>;
Ví dụ 3.11:
KHOANGCACH(A,B) = KHOANGCACH(A,M) + KHOANGCACH(M,B);
Trang 25MÔ HÌNH FUNCS-COKB
Hình 3.1 Sơ đồ tổ chức tri thức theo mô hình Funcs-COKB
OPERATORS.txt
DEFINE-…
Cấu trúc đối tượng
Cấu trúc đối tượng
OPERATORS.txt
OBJECTS.txt
RELATIONS.txt
FUNCTIONS.txt
DEFINE-FUNCTIONS.txt
FACTS
RULES.txt
Trang 27MÔ HÌNH BÀI TOÁN
Cho bài toán P = (T, O, F) G trong mô hình Funcs-COKB, trong đó:+ T: tập các tham số thực (nếu có)
+ O: tập các đối tượng
+ F: tập các sự kiện giữa các đối tượng
+ G: tập các sự kiện mục tiêu của bài toán, gồm các loại sau:
Xác định đối tượng hoặc thuộc tính của đối tượng,
Xác định giá trị của một hàm,
Xác định quan hệ giữa các đối tượng,
Xác định tham số
Trang 28VÍ DỤ BIỂU DIỄN MỘT SỐ BÀI TOÁN
a Xác định A, B là giao điểm của Ox, Oy với (d).
b Tìm toạ độ hình chiếu H của gốc O lên (d).
c Viết phương trình (d’) đối xứng với (d) qua O.
Trang 29VÍ DỤ BIỂU DIỄN MỘT SỐ BÀI TOÁN
của m biết M(-1, 7) là trung điểm của đoạn thẳng AB
T :={m},
O := {A: điểm, B: điểm, M: điểm}
F : = {M=Trung_điểm(A, B)}
G :={m}.
Trang 30THUẬT GIẢI
Trang 32ĐẶC TẢ BÀI TOÁN
begin_exercise # bắt đầu phần đặc tả cho đề bài toán kind_ex = “….”
<các tham biến>
end_parameters
…
…
end_facts
Trang 33ĐẶC TẢ BÀI TOÁN
Trang 35KẾT QUẢ ĐẠT ĐƯỢC
hình hóa và biểu diễn cơ sở tri thức trong thực tế đơn giản hơn, cụ thể hơn, hiệu quả hơn mô hình COKB truyền thống trong một số miền tri thức cụ thể
Xác lập và giải quyết được một số vấn đề trên thành phần tri thức hàm: suy diễn từ hàm, sinh phương trình, giải phương trình
Thiết kế các thuật giải để tìm lời giải cho bài toán một cách tự động và gần gũi với cách giải của con người
Xây dựng được ứng dụng giải tự động các bài toán trong miền tri thức Hình học giải tích hai chiều
Trang 36thiện với người dùng.
Trang 37HƯỚNG PHÁT TRIỂN
Mở rộng miền tri thức, bổ sung hình ảnh minh họa cho từng bài toán, phát triển ngôn ngữ quy ước cũng như việc bắt lỗi chặt chẻ hơn về mặt cú pháp
Thiết kế giao diện cho ứng dụng, từng bước nâng cao tính thân thiện với người dùng như: cho phép người dùng nhập đề bài bằng hình ảnh, bằng ngôn ngữ tự nhiên
Từng bước cải tiến các thuật giải, và kết hợp với 2 hướng phát triển ở trên để xây dựng phần mềm ứng dụng thương mại về giải toán tự động phục vụ mục đích giáo dục, triển khai rộng rãi thông qua hạ tầng internet
Trang 38NỘI DUNG
Trang 39TÀI LIỆU THAM KHẢO
khoa Đà Nẵng, Đà Nẵng
2 Hoàng Kiếm, Đỗ Văn Nhơn, Đỗ Phúc (2006), Các hệ cơ sở tri thức,
NXB Đại học Quốc gia Tp.HCM, Tp.HCM
3 Đỗ Văn Nhơn (2013), Bài giảng cao học chuyên đề Biểu diễn tri thức và
ứng dụng, Trường Đại học Công nghệ thông tin, TP.HCM.
4 Phạm Hữu Tâm (2009), Xây dựng mô hình biểu diễn tri thức thiết kế hệ
hỗ trợ giải các bài toán điện xoay chiều trong chương trình THPT, BCKH
Thạc sĩ KHMT, Trường Đại học Công nghệ thông tin, Tp.HCM
giải các bài toán điện một chiều, BCKH Thạc sĩ KHMT, Trường Đại học
Công nghệ thông tin, Tp.HCM
Trang 40TÀI LIỆU THAM KHẢO
6 Đinh Xuân Thọ (2007), Nghiên cứu và phát triển một mô hình tri thức
dạng hàm, BCKH Thạc sĩ KHMT, Trường Đại học Công nghệ thông tin,
Tp.HCM
7 Nguyễn Thanh Thủy (2007), Trí tuệ nhân tạo: Các phương pháp giải
quyết vấn đề và kỹ thuật xử lý tri thức, NXB Khoa học và kỹ thuật, Hà Nội.
8 David Poole, Alan Mackworth (2010), Artificial Intelligence – Foundation
of Computational Agents, Cambridge University Press Publ, Cambridge, UK.
9 Nhon Van Do (2012), “Intelligent Problem Solvers in Education: Design Method and Applications”, Intelligent Systems, Prof Vladimir M Koleshko (Ed.), ISBN: 978-953-51-0054-6, InTech Publ, pp 121-148
Trang 41TÀI LIỆU THAM KHẢO
Systems”, New Trends in Sofware Methodologies Tools and Techniques, Vol.265, pp 354-373
11 Frank van Harmelen, Vladimir Lifschitz, Bruce Porter (2008), Handbook
of Knowledge Representation, Elsevier Science Publ, Amsterdam,
Netherlands
12 George F.Luger (2009), Artificial Intelligence – Structures and Strategies
for Complex Problem Solving (sixth edition), Addison Wesley Publ, Boston,
USA
13 John F Sowa (2000), Knowledge Representation: Logical, Philosophical
and Computational Foundations, Brooks/Cole Publ, California, USA.
14 Stuart Russell, Peter Norvig (2010), Artificial Intelligence – A modern
approach (third edition), Prentice Hall Publ, New Jersey, USA.
Trang 42CHÂN THÀNH CÁM ƠN QUÝ THẦY CÔ,
CÁC ANH CHỊ và CÁC BẠN.