Bên cạnh đó, hệ thống tra cứu kiến thức môn học phải đáp ứng được các yêu cầu của việc tra cứu hỗ trợ học tập: tra cứu nội dung môn học theo các chương, khái niệm, tính chất, định lý, cá
Trang 1ĐẠI HOC QUOC GIA TP HCM
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
DƯƠNG NGỌC THẠCH THẢO
HE TRI THỨC HO TRỢ HỌC TẬP VE TOÁN ROT RAC
VA LY THUYET DO THI
LUẬN VAN THẠC SĨ NGÀNH CÔNG NGHỆ THÔNG TIN
Mã số: 8480201
Trang 2ĐẠI HỌC QUOC GIA TP HCM
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
DƯƠNG NGỌC THẠCH THẢO
HE TRI THỨC HỖ TRỢ HỌC TẬP VE TOÁN ROI RAC
LUẬN VĂN THẠC SĨ NGÀNH CÔNG NGHỆ THÔNG TIN
Mã số: 8480201
NGƯỜI HƯỚNG DẪN KHOA HỌC:
PGS.TS BO VĂN NHƠN
Trang 3LỜI CAM ĐOAN
Em xin cam đoan đề tài luận văn tốt nghiệp “Hệ tri thức hỗ trợ học tập về Toán rờirạc và Lý thuyết đồ thị cho sinh viên ngành Công nghệ Thông tin" là công trìnhnghiên cứu độc lập của em, dưới sự hướng dẫn của PGS.TS Đỗ Văn Nhơn Các tríchdẫn, tham khảo trong quá trình nghiên cứu đều được trích dẫn day đủ, ghi rõ nguồn
gốc Em xin hoàn toàn chịu trách nhiệm trước bộ môn, khoa và nhà trường về sự cam
đoan này.
Học viên thực hiện
Dương Ngọc Thạch Thảo
Trang 4LỜI CẢM ƠN
Lời đầu tiên, em xin gởi lời cảm ơn và biết ơn sâu sắc đến Ban Giám Hiệu nhà trường,
các thầy cô trong bộ môn, khoa và phòng đào tạo Sau đại học đã tạo điều kiện tốt
nhất cho em cũng như các bạn trong suốt thời gian học tập; những người đã hỗ trợ,
giúp đỡ em về kiến thức và tỉnh thần trong quá trình hoàn thành luận văn Đặc biệt,
em xin chân thành cảm ơn PGS.TS Đỗ Văn Nhơn và TS Nguyễn Đình Hiển đã trựctiếp hướng dẫn và giúp đỡ tận tình cho em trong suốt thời gian làm luận văn này
Trong quá trình học tập ở trường, em không những tiếp thu được nhiều kiến thức bổ
ích, hữu dụng mà còn học tập được ở các thầy cô tỉnh thần làm việc nghiêm túc, thái
độ nghiên cứu khoa học hăng say và hiệu quả Đó chính là hành trang cần thiết cho
em trong quá trình học tập và làm việc sau này.
Do kiến thức của em cũng cũng còn nhiều hạn ché, bỡ ngỡ nên khó tránh khỏi nhữngsai sót, em rat mong nhận được sự đóng góp quý báo của các thay cô dé em có thé bổ
sung và hoàn thiện tốt hơn, để luận văn này có tính ứng dụng vào thực tế cao hơn
Sau cùng, em xin kính chúc quý thầy cô luôn dồi dào sức khỏe dé tiếp lửa cho thémai sau Một lần nữa em xin gởi lời cảm ơn chân thành và sự tri ân sâu sắc nhất đếnquý thay cô!
Học viên
y A
Duong Ngoc Thach Thao
⁄
Trang 5LỜI CAM ĐOAN
LỜI CẢM ƠN
DANH MỤC CÁC KY HIỆU VÀ CHU VIET TAT
DANH MỤC CÁC BẢNG
DANH MỤC CÁC HÌNH VẼ, ĐÒ THỊ
CHƯƠNG 1: TONG QUAN
1.1 Giới thiệu về dé tai
1.2 Các nghiên cứu và hướng tiép cận liên quan
1.3 Ý tưởng khoa học và tính mới của dé tai
1.4 Mục tiêu, đối tượng và phạm vi nghiên cứu của đề
1.4.1 Mục tiêu của đề tài
1.4.2 Đối tượng và phạm vi nghiên cứu
1.5 Bố cục luận văn
CHƯƠNG 2: MÔ HÌNH TRI THỨC VÀ CÁC PHƯƠNG PHÁP TRUY VAN
KIEN THỨC TOAN ROI RAC „132.1 Khảo sát kiến thức môn học Toán rời rac 13
2.1.1 Kiến thức về cơ sở logic 132.1.2 Kiến thức về quan hệ hai ngôi "ưi
2.1.3 Kiến thức về Lý thuyết dé thị 21
2.2 Mô hình tri thức „23
2.2.1 Mô hình biêu diễn tri thức môn học Rela-model si)
2.2.2 Mô hình Query-Onto biéu diễn tri thức cho hệ thống tra cứu kiến thức
môn học 5
2.2.3 Tổ chức mô
2.3 Các van dé trong truy vấn kiến thức và thuật giải
2.3.1 Vấn đề tra cứu nội dung kiến thức môn học
Trang 62.3.2 Vấn đề tra cứu theo sự phân loại kiến thức 362.3.3 Vấn đề gợi ý các kiến thức liên quan 38
CHUONG 3: PHUONG PHAP THIET KE VIEC MINH HQA CAC THUATTOÁN TRONG LY THYET ĐỎ THI a4
3.1 Khao sát kiến thức về các thuật toán trong Lý thuyết đồ thị wl
„41 42
3.2.1 Bài toán duyệt đồ thị
3.2.2 Bai toán tìm đường đi ngắn nhất
3.2.3 Bài toán cây khung nhỏ nhất (Minimum Spanning Tree - MST) 463.2 Phân tích yêu cầu về minh họa thuật toán
3.3 Mô hình tri thức biểu diễn kiến thức các thuật toán
3.3.1 Cấu trúc frame
3.3.2 Mô hình tích hợp tri thức dạng ontology va frames
3.4 Các vấn dé về minh họa một thuật toán
3.4.1 Vấn đề theo dõi trạng thái của thuật toán
3.4.2 Vấn đề hiển thị kết quả ở dang đồ họa
3.4.3 Vấn đề đồng bộ hóa việc minh họa các kết qua
3.5 Minh họa các thuật toán theo yêu cầu người dùng
CHUONG 4: THIET KE CHƯƠNG TRINH VÀ THU NGHIỆM
4.1 Thiết kế hệ thống
4.2 Mô tả ứng dụng
4.2.1 Tương tác với người dùng
4.2.2 Truy vấn kiến thức
4.2.3 Minh họa một số thuật toán trong Lý thuyét đồ thị
CHƯƠNG 5 KET LUẬN
5.1 Kết quả đạt được
5.2 Các hạn chế và hướng phát trién
Trang 7TAI LIỆU THAM KHAO
Trang 8DANH MỤC CÁC KÝ HIỆU VA CHỮ VIET TAT
STT Các từ viết tắt Từ viết đầy đú
1 | IPS Intelligent Problem Solver
2 | CNTT Công nghệ Thông tin
3 | BFS Breadth-first search
4 | DFS Depth-First Search
5 | COKB Computational Objects Knowledge Base
6 | THPT Trung hoc phé thong
7 |AITS An Educational System for Learning Search
Algorithms and Automatically Assessing Student Performance.
8 | SAS Starting with Algorithmic Structures
9 | KH&CN Khoa hoc va Cong nghé
10 | HTML HyperText Markup Language
II | CSS Cascading Style Sheets
12 | MST Minimum Spanning Tree
Trang 9Bảng 2 I Các luật logic
Bảng 2 2 Các quy tắc suy diễn ATBang 2 5 Thuật giải về tra cứu nội dung ki thức thông qua các từ khóa đã được xác
Bảng 2 6 Thuật giải vê việc tra cứu các kiên thức liên quan .
Bảng 3 1 Ví dụ về các Step của thuật toán DFS
Bảng 3 2 Cấu trúc của frame biểu diễn thuật toán Prim
Bảng 3 3 Thuật toán đồng bộ hóa các kết quả minh họa thuật toán
Bảng 4 1 Kết quả thử nghiệm truy van thuật toán
Bảng 4 2 Bảng đánh giá chức năng minh họa các thuật toán
Trang 10DANH MỤC CÁC HÌNH VE, DO THỊ
Hình 2 1 Ví dụ về biểu đồ Hasse
Hình 2 2 Ví dụ về biểu đồ Hasse
Hình 3 1 Minh họa việc theo dõi trạng thái của thuật toán Dijkstra tai Step t 57
Hình 3 2 Đồ họa minh họa bước thực thi Step t (Duyệt tại đỉnh A)
Hình 3 3 Đồ họa minh họa bước thực thi Step t “Duyệt cạnh AB”
Hình 3 4 Lưu dé minh họa các bước thực thi của thuật toaán
Hình 4 1 Kiến trúc hệ thống tra cứu kiến thức các môn học
Hình 4 2 Giao diện chương trình tra cứu theo chương và bài học
Hình 4 3 Giao diện khi nhập từ khóa tìm kiếm và gợi ý tìm kiếm
Hình 4 4 Giao diện trang kết quả tìm kiếm
Hình 4 5 Giao diện phần kiến thức liên quan của mỗi kiến thức được tìm kiếm 70
Hình 4 6 Giao diện chương trình minh họa thuật toán
Hình 4 7 Đồ thị minh họa thuật toán Dijkstra
Hình 4 8 Giao diện chương trình minh họa thuật toán Dijkstra.
Hình 4 9 Giao diện chương trình kết quả minh họa thuật toán Dijkstra
Trang 11CHƯƠNG 1: TÔNG QUAN
1.1 Giới thiệu về đề tài
Ngày nay, Internet là công cụ hỗ trợ rất hữu ích trong việc tìm kiếm thông tin và kiếnthức về mọi lĩnh vực từ khoa học đến lịch sử, văn họá, giáo dục Trong lĩnh vực giáo
dục, dé tiếp thu và nâng cao kiến thức, người học phải tự nghiên cứu, thu thập kiến
thức liên quan đến môn học thông qua sách báo, mạng Internet và các phương tiệnthông tin đại chúng để giải quyết các vấn dé đặt ra Với một kho tàng tri thức không
lồ từ Internet, chúng ta sẽ mat nhiều thời gian thậm chí mat phương hướng hoặc quátải do lượng thông tin rất nhiều Vì vay, việc xây dựng các hệ thống hỗ trợ, hướng
dẫn học tập rất có ý nghĩa đối với người học
Trong cuộc cách mạng công nghiệp 4.0 hiện nay, E-learning là phương thức đào tao
đang được phát trién mạnh mẽ Thông qua các phương tiện điện tử và ứng dụng công.nghệ thông tin, người học có thé linh động hơn trong việc lựa chọn thời gian, địađiểm và hình thức học Dé đạt được hiệu quả tốt nhất trong E-learning, việc xây dựng
hệ thống hỗ trợ tra cứu, tìm kiếm kiến thức đóng vai trò vô cùng quan trọng, giúpngười học có thể ôn tập lại hoặc tra cứu các kiến thức đã học Hệ thống này được xây
dựng dựa trên nền tảng cơ sở tri thức được tổ chức đề biểu diễn nội dung môn học
Bên cạnh đó, hệ thống tra cứu kiến thức môn học phải đáp ứng được các yêu cầu của
việc tra cứu hỗ trợ học tập: tra cứu nội dung môn học theo các chương, khái niệm,
tính chất, định lý, các dạng bài tập thông dụng cũng như những phương pháp giảitương ứng Hệ thống có thẻ tự động đưa ra gợi ý các kiến thức liên quan với nội dung
đang được tra cứu đề người học có thể nắm vững các kiến thức đang tìm hiểu
Bên cạnh việc tra cứu và truy vấn kiến thức, các hệ thống hướng dẫn giải bài tập
thông minh (Intelligent Problem Solver - IPS) cho các môn hoc vé khoa hoc ky thuat
cũng rất hữu ich đối với quá trình học tập Đặc biệt là các môn học về thuật toán của
chương trình đào tạo CNTT như: Cấu trúc dữ liệu và Giải thuật, Cấu trúc rời rac, Ly
thuyết đồ thị Sinh viên hiểu và năm được quá trình thực thi các thuật toán rat quan
Trang 12trọng trong việc tiếp thu kiến thức Hệ thống phải minh họa việc thực thi thuật toántheo từng bước Trong quá trình minh họa thuật toán, người dùng có thể yêu cầu hệthống dừng lại hoặc chuyên sang bước tiếp theo, hoặc giải thích một bước giải nào
đó trong thuật toán Hệ thống cũng phải đáp đứng được các yêu cầu về minh họa thuậttoán đối với dữ liệu đầu vào được nhập vào bởi người dùng
Đề tài này xây dựng phương pháp thiết kế hệ hỗ trợ học tập cho sinh viên ngành Công
nghệ thông tin, tập trung vào miền cơ sở tri thức của môn học Toán rời rac và Lý
thuyết đồ thị Xây dựng phương pháp thiết kế hệ hỗ trợ học tập cho sinh viên ngành
Công nghệ thông tin Phương pháp này bao gồm việc tổ chức cơ sở tri thức dé biéudiễn các kiến thức về môn học, cũng như việc thiết kế xử lý trên cơ sở tri thức choviệc tra cứu, truy vấn kiến thức, minh họa một số thuật giải như thuật giải Dijkstra,thuật giải tìm kiếm theo chiều rộng (BFS), thuật giải tìm kiếm theo chiều sâu (DFS),
Mô hình biểu diễn tri thức của hệ thống dựa trên mô hình Ontology đề xây dựng
cơ sở tri thức cho hệ thông hỗ trợ học tập Trên cơ sở mô hình xây dựng được, cácvấn dé khái niệm được xác lập và định nghĩa, cũng như thiết kế các thuật giải đáp
ứng các yêu cầu đặt ra
1.2 Các nghiên cứu và hướng tiếp cận liên quan
Trong lĩnh vực nghiên cứu về công nghệ tri thức, việc xây dựng các hệ thống thông
minh hỗ trợ cho việc học tập là một trong những thách thức mang tính thực tiễn cao
[1,2] Các hệ thống này cần phải có một cơ sở tri thức biểu diễn đầy đủ các kiến thức
của môn học Chất lượng hoạt động của các hệ thống này phụ thuộc vào phương pháp
biểu diễn và tổ chức tri thức [3] Việc xây dựng phương pháp biểu diễn tri thức cho
phép chúng ta mô phỏng các tri thức, đồng thời xác định kết quả có thể suy luận được
từ tri thức đó.
Trong những năm gần đây, Ontology được ứng dụng trong nhiều trong các lĩnh vực
khác nhau như trí tuệ nhân tạo, công nghệ Web ngữ nghĩa (Semantic Web), các hệ
Trang 13hình thức biểu diễn tri thức về thé giới hoặc một số lĩnh vực cụ thể Ứng dụng quantrọng nhất của Ontology là biểu diễn tri thức Ontology mô tả không chỉ khái niệm
và thuộc tính mà còn cung cấp các quan hệ cũng như các tiên đề phục vụ cho việc
suy luận như cho phép thêm dữ liệu vào ngữ nghĩa, quản lý và cập nhật tri thức, tích
hợp dữ liệu cũng như tai sử dụng các thành phan dé dàng hơn Ngoài việc đưa ra các
mô hình biéu diễn tri thức, mỗi lĩnh vực đều phát triển một tập các khái niệm riêngdưới dạng các Ontology Trên cơ sở đó đã có nhiều ngôn ngữ Ontology ra đời Tùytheo đặc thù của từng lĩnh vực, mà mỗi Ontology sẽ biểu diễn với một ngôn ngữ đặc
tả tri thức khác nhau.
Ontology là một công cụ quan trọng trong lĩnh vực Web ngữ nghĩa, mở ra cơ hội rộng
lớn cho việc xử lý thông tin tự động Ontology có một số tính chất như sau:
© Ontology cung cấp một bộ từ vựng chung bao gồm các khái niệm, thuộc tính
và các định nghĩa về các khái niệm và các thuộc tính đó Ngoài ra, Ontologycòn cung cấp các ràng buộc như các giả định cơ sở về ý nghĩa của bộ từ vựng,
nó được sử dụng trong một miền mà có thé được giao tiếp giữa người và các
hệ thống ứng dụng phân tán khác
© Cho phép tái sử dụng tri thức: Bằng cách kế thừa các Ontology tương tự có sẵn,
người xây dựng một Ontology có thé thêm hoặc bớt các lớp, quan hệ giữa các
lớp, thực thể, để tùy chỉnh theo mục đích của mình Việc sử dụng lại các
Ontology có sẵn rất quan trọng trong việc tương tác giữa các ứng dụng khácnhau dé thuận tiện trong việc trao đồi hoặc thống nhất thông tin
© Cho phép tri thức độc lập với ngôn ngữ: đây cũng là vấn đề liên quan đến lĩnh
vực tái sử dụng tri thức đã nói ở trên, tuy nhiên bài toán của nó là làm thế nào
đề một hệ thống Ontology có thé được dùng bởi các ngôn ngữ của các quốc giakhác nhau mà không phải xây dựng lại.
© Cho phép tri thức trở nên nhất quán và tường minh: các khái niệm khác nhau
trong một hay nhiều lĩnh vực cụ thé có thé cùng tên và gây nhập nhằng về ngữ
Trang 14nghĩa, tuy nhiên khi được đưa vào một hệ thống ontology thì tên mỗi khái niệm
là duy nhất
© _ Cung cấp một phương tiện cho công việc mô hình hóa: Ontology là một tập các
khái niệm phân cấp được liên kết với nhau bởi các quan hệ Cơ bản mỗi khái
niệm có thê xem như là một lớp, mà đối tượng của lớp đó cùng các quan hệ đã
góp phần tạo nên cấu trúc của bài toán hay van dé cần giải quyết
© Cung cấp một phương tiện cho việc suy luận: hiện nay, một số ngôn ngữ
Ontology đã tích hợp lớp Ontology suy luận bên trong cho mục đích suy diễntrên tập quan hệ giữa các đối tượng trong hệ thống
Một số mô hình Ontology cho việc truy vấn kiến thức:
Mô hình COKB (Computational Objects Knowledge Base): là mô hình tri thức các
đối tượng tính toán được xây dựng theo cách tiếp cận hướng đối tượng [4] Mô hình
COKB có thể biéu diễn các dang tri thức khác nhau như quan hệ, toán tử, hàm Mô
hình này đã được sử dụng dé biểu diễn cho các miền tri thức về Toán rời rac và Lýthuyết đồ thị [5] Tuy nhiên, mô hình COKB này chỉ hiệu quả cho việc thiết kế các
hệ thống hỗ trợ giải bài tập tự động của môn học, chưa thé giải quyết được vấn đề
phối hợp giữa các miền tri thức trong một hệ thống
Rela-model là ontology biéu diễn tri thức quan hệ và đã được ứng dụng trong việc
biểu diễn các miễn tri thức trong giáo dục và y khoa [6, 7] Các vấn đề chung của mô
hình này như sau: đưa ra một số đối tượng va dit kiện về chúng, xác định thuộc tính
và dữ kiện trên đối tượng hoặc xem xét mối quan hệ giữa các đối tượng Bên cạnhnên tảng toán học vững chắc, Rela-model còn có một ngôn ngữ đặc tả đơn giản, cóthể biểu diễn kiến thức một cách hiệu quả, do đó nó có thể được sử dụng trong nhiều
tình huống thực tế Phương pháp tiếp cận này cũng được áp dụng dé xây dựng hai
thống: hệ thống giải quyết vấn dé thông minh về hình học trong môn toán học phd
thông và hệ thống chuyên gia chân đoán các bệnh trong biến chứng vi mạch tiểu
đường.
Trang 15Ontology Search-Onto đã được nghiên cứu và ứng dụng đề xây dựng hệ thống tìm
kiếm kiến thức trong môn Toán bậc Trung học phổ thông (THPT) [8] Một số kỹthuật tìm kiếm thông minh dựa trên Search-Onto đã được nghiên cứu: tìm kiếm nộidung kiến thức, tìm kiếm trên phân loại kiến thức và tìm kiếm kiến thức liên quan
Hệ thống này tổ chức miền tri thức hoàn chỉnh, có thé thực hiện các công việc tìmkiếm thông minh và truy xuất thông tin cần thiết cho sinh viên để hỗ trợ việc học.Tuy nhiên, mô hình Search-Onto mang tính đặc thù chỉ áp dụng được cho kiến thứcToán bậc THPT và không áp dụng cho các môn học khác.
Các nghiên cứu hỗ trợ truy vấn và tìm kiếm kiến thức:
Hiện nay, chúng ta có nhiều phương pháp xây dựng hệ thống tìm kiếm các văn bản
theo ngữ nghĩa Tuy nhiên, những hệ thống nay chưa được trang bị cơ sở tri thức biểu
diễn kiến thức trong thực tế Để hỗ trợ việc học tập, các hệ thống tìm kiếm cần phải
được tổ chức đầy đủ nội dung kiến thức môn học và hỗ trợ các yêu cầu tra cứu, tìmkiếm khác nhau của người học dé hướng đến việc giúp người học nắm vững các kiếnthức đang cần tìm hiểu
Docxonomy là một công cụ tìm kiếm bằng cách tự động trích xuất ý nghĩa từ các taptin [9] Nó thu thập kiến thức, hiểu biết và ngữ cảnh bằng cách sử dụng trí thông minhnhân tạo dé đọc và giải thích dữ liệu Tuy nhiên, hệ thống này không có cơ sở tri thức
để tổ chức tri thức, và chương trình này rất khó đề thiết kế các chức năng đáp ứng các
yêu cầu của hệ thống ứng dụng trong giáo dục
Hệ thống Yext là một hệ thống tìm kiếm thông minh cho phép người dùng theo dõi
các từ khóa dựa trên dit liệu được lưu trữ trong bộ quản lý tri thức của nó [10] Hệ
thống có chức năng chính hướng đến việc hiểu được các hành vi của doanh nghiệp
trong các hoạt động tìm kiếm Tuy nhiên, bộ quản lý tri thức của Yext chủ yếu chỉ
lưu trữ các thông tin dạng dữ liệu Do đó, hệ thống tìm kiếm này chỉ có hiệu quả đốivới một số công việc đơn giản trong thương mại điện tử và không đáp ứng được cácyêu cầu của một hệ thống giáo dục
Trang 16Trong nghiên cứu “An Educational System for Learning Search Algorithms and
Automatically Assessing Student Performance (AITS)” [11], nhóm tác giả đã xây
dựng một hệ thống hỗ trợ, hướng dẫn sinh viên học các giải thuật tìm kiếm Hệ thống.cung cấp cho sinh viên các kiến thức, minh họa các giải thuật theo từng bước, đặt racác bài âu hỏi cho người học Ngoài ra, hệ thống còn tự động ra b tập, chấmđiểm và đánh giá khả năng của người học Nhóm tác giả thử nghiệm với tập dữ liệugồm 400 câu trả lời của sinh viên, chia làm 2 lớp, xác nhận lại bởi 3 chuyên gia và so.sánh với hệ thống Kết quả thu được rất đáng khích lệ với điểm đánh giá trung bình
của 3 chuyên gia lần lượt là 4.38/5, 4.47/5 và 4.39/5 Tuy nhiên, hệ thống còn chạy
chậm và xuất hiện một số lỗi về giao diện Mô hình tri thức của hệ thống cũng chưa
hoàn chỉnh.
Discrete Mathematics Study Center cung cấp đầy đủ tri thức về Toán rời rac cho sinhviên ngành Công nghệ Thông tin và cơ sở dữ liệu bài tập có đầy đủ các ví dụ đã làm
về nhiều chủ đề, chăng hạn như logic, chứng minh, tập hợp, hàm, quy nạp, quan hệ
và đồ thị Mỗi bài tập được phân loại để học sinh có thể dễ dàng tìm thấy các bài tập
trong lĩnh vực mà họ đang muốn học Ngoài ra, mỗi bài tập được đánh giá theo mức
độ khó và các ứng dụng có thể được đưa ra Các bài tập cũng được gắn với từ khóa
đê thuận tiện cho việc tìm kiếm Tuy nhiên, ứng dụng chỉ hỗ trợ tiếng Anh, chưa trình
bài rõ ràng mối quan hệ giữa các khái niệm, chỉ hiển thị bước giải của các bài tập
mẫu và chưa có chức năng giải bài tập.
Một số ứng dụng tiêu biểu hỗ trợ vấn đề tra cứu tri thức:
VOER [12]: là một “thư viện học liệu mở Việt Nam” có trên 2100 môn học bao gồmbài giảng, lịch học, danh mục tài liệu tham khảo, bài tập về nhà, bài thi, bài thí nghiệm
để người dùng có thể tham khảo cho việc giảng dạy, học tập và nghiên cứu của mình
Chức năng tra cứu tài liệu cho phép tra cứu theo các chương mục, loại tài liệu và ngôn
ngữ với miền kiến thức đa dạng, phù hợp với sinh viên Nhược điểm là chưa thé hiện
rõ ràng môi liên hệ giữa các tri thức.
Trang 17'Wikipedia [13]: là một bách khoa toàn thư tự do, là kết quả sự cộng tác của chính
những người doc từ khắp nơi trên thế giới Người dùng có thé tra cứu các tri thức liênquan một cách dễ dàng, có cả tiếng Việt và tiếng Anh Tuy nhiên, kiến thức chưa đảmbảo độ chuẩn xác, không khớp so với chương trình đào tạo ở Việt Nam, chưa phân
loại được sự liên hệ giữa các tri thức.
WolframlAlpha [14]: một công cụ tìm kiếm và tra cứu dữ liệu hoạt động tương tự
Google, giải đáp các phép tính toán, các câu trả lời cho các môn học, hoàn toàn
phù hợp với các bạn đang là học sinh, sinh viên trong quá trình học tập Hệ thống có
kiến thức đầy đủ và chuẩn xác, đa dạng chủ đề tìm kiếm, từ các phép toán cho đếncác đầu sách, dữ liệu trong cuộc sống Wolfram|Alpha có định dạng trên Website và
cả trên App (Android) giúp người dùng có thé tìm kiếm bat kỳ lúc nào bat kỳ nơiđâu Hệ thống có miền kiến thức rộng, giao diện bao quát, thể hiện sự liên quan bằng
truy vấn theo tên khái niệm
Nghiên cứu hỗ trợ hướng dẫn học tập các thuật toán thông qua việc minh họa
các thuật toán:
Hiện nay, có rất nhiều nghiên cứu cho việc xây dựng các hệ thống hỗ trợ hướng dẫn
học tập các thuật toán thông qua việc minh họa các thuật toán Tuy nhiên, các hệ
thống nay chưa có một cơ sở tri thức thật sự, tri thức của chúng hầu hết được tô chứcdưới dang frame, do đó chúng chỉ hỗ trợ được các thuật toán đã được cài đặt sẵn
Trong [15], c giả đã trình bày việc xây dựng hệ thống hướng dẫn, minh họa các
thuật toán tìm kiêm Hệ thông này có thể minh họa một cách trực quan một số thuật
toán tìm kiếm cơ bản Trong [16], tác giả cũng đã xây dựng hệ thống Pathfinder dé
hỗ trợ sinh viên học tập thuật toán Dijkstra Các hệ thống này đều có khả năng trựcquan hóa các thuật toán một cách linh động Tuy nhiên, do tri thức của các hệ thốngnày được tổ chức theo dang frame nên mỗi hệ thống này chỉ mới đáp ứng được mộtphần kiến thức của nội dung môn học về Lý thuyết đồ thị
Trang 18Hệ thống SAS (Starting with Algorithmic Structures) [17] được thiết kế cho việc họctập các khái niệm và cấu trúc các thuật toán cơ bản Người học có thê theo dõi cácbước thực thi của thuật toán thông qua các dữ liệu được người dùng đưa vào Tương
tự như vậy, trong [18], các tác giả đã xây dựng một hệ thống hỗ trợ việc học các thuậttoán sắp xếp Tuy nhiên, do tri thức của các hệ thống này được tổ chức theo dang
frame nên chưa đáp ứng các yêu cầu của một hệ thống hướng dẫn giải bài tập thông
minh trong giáo dục.
VisuAlgo [19] được lên ý tưởng vào năm 2011 bởi Tiến sĩ Steven Halim như một
công cụ giúp sinh viên của ông hiểu rõ hơn về cấu trúc dữ liệu và thuật toán, bằngcách cho phép họ tự học những kiến thức cơ bản và theo tốc độ của riêng họ VisuAlgo
hỗ trợ ba ngôn ngữ chính: tiếng Anh, tiếng Trung và tiếng Indonesia Tuy nhiên, hệthống này chưa được xây dựng một cơ sở tri thức đúng nghĩa, chỉ hỗ trợ việc minhhọa các thuật toán đã được cài đặt sẵn
Algorithm Visualizer [20] cũng là một ứng dụng web minh họa các thuật toán được
viết bằng React, dưới dạng code của các ngôn ngữ lập trình C Nó chứa các thànhphần giao diện người dùng và diễn giải các lệnh thành các hình ảnh trực quan Tuynhiên, việc minh họa này không hiệu quả cho việc học vì người học rất khó theo dõi
ý tưởng của thuật giải thông qua việc đọc code dạng ngôn ngữ lập trình.
Trong nghiên cứu [5], một hệ thống hỗ trợ cho việc học tập các môn học Lý thuyết
đồ thị và Toán rời rạc đã được nhóm tác giả nghiên cứu và xây dựng Hệ thống được
xây dựng trên cơ sở mô hình tri thức ECOKB Chương trình có thê hỗ trợ giải tự động.các bài tập thông dụng trong các môn học này Tuy nhiên, hệ thống chỉ đưa ra các lờigiải và chưa có chức năng hướng dẫn, minh họa các thuật toán để người học hiểu rõhơn quá trình thực thi của thuật toán.
1.3 Ý tưởng khoa học và tính mới của đề tài
Toán rời rạc và Lý thuyết đồ thị là một trong những là một trong những môn học cơ
Trang 19là nền tảng của thuật toán và nhiều mô hình quan trọng trong máy tính (Logic, đại số
bool, lý thuyết đồ thị, xác suất, tổ hop )
Sinh viên có thể dé dàng truy cập vào Internet để tìm kiếm các kiến thức về Toán rời
rạc và Lý thuyết đồ hoặc thông qua những quyền sách chuyên ngành Các tài liệu
được cung cấp thường dưới dạng văn ban, slide trình chiếu hoặc các demo trực quan.Phần lớn các tài liệu cung cấp đầy đủ kiến thức và demo trực quan không hỗ trợ tiếng
Việt, trong khi đa số sinh viên được học môn học này vào năm nhất sẽ bỡ ngỡ trong
việc nghiên cứu các tài liệu tiếng Anh, và các kiến thức cũng không khớp hoàn toàn
với chương trình giảng dạy tại Việt Nam.
Bên cạnh đó, các nguồn tài liệu hiện nay thường chỉ liệt kê kiến thức ở dạng chương
mục và không thể hiện mối quan hệ giữa các khái niệm gây khó khăn cho việc tra
cứu lại kiến thức Từ đó có thé thấy rằng việc ứng dụng công nghệ thông tin dé hỗtrợ học môn toán rời rạc là thực sự cần thiết Ngoài ra, hệ thống minh họa thuật toán
sẽ là một ứng dụng thiết thực cho việc hỗ trợ học tập các kỹ thuật lập trình của sinhviên ngành Công nghệ thông tin, đặc biệt là đối với sinh viên năm thứ nhất và nămthứ hai Sinh viên có thé sử dụng chương trình dé tự học và tìm hiểu các thuật toán
đã được giảng dạy trong chương trình học.
Tir những van đề trên, dé tài sử dụng Ontology giúp tổ chức tri thức mang tính hệ
thống để giải quyết những vấn đề sau:
1/ Xây dựng phân hệ hỗ trợ tra cứu kiến thức
_ Ứng dụng dựa trên cơ sở tri thức có tính khoa học và chính xác cao, phù hợp
với chương trình đào tạo ở Việt Nam.
= Thể hiện rõ mối liên hệ giữa các tri thức, trình bày dễ hiểu, minh họa trực quancho các tri thức.
— Chương trình đáp ứng được một số yêu cầu tra cứu thông dụng của người sử
dụng như: tra cứu hệ thống theo chương bài, tra cứu các khái niệm, định lý,
tính chất và công thức tính toán, liệt kê hệ thống các dạng bài tập và phương
Trang 20pháp tính toán liên quan, tra cứu nhanh các kiến thức và tra cứu theo các kiến
thức liên quan.
2/ Xây dựng phương pháp thiết kế hệ thống minh họa các thuật toán hỗ trợ cho
việc học tập của sinh viên, giúp trực quan hóa việc theo dõi được tiến trình thực
hiện các thuật toán Sử dụng cấu trúc của frame thuật toán được xây dựng đểbiểu diễn đầy đủ nội dung các thuật toán muốn minh họa Phương pháp thiết
kế hệ thống minh họa các thuật toán này bao gồm các chức năng sau:
— Phương pháp tổ chức cơ sở tri thức để biểu diễn các nội dung thuật toán đápứng được yêu cầu minh họa quá trình thực thi các thuật toán đó
— Xây dựng kỹ thuật minh họa các thuật toán theo yêu cầu người dùng: có thểyêu cầu hệ thống dừng lại hoặc qua bước kế tiếp, hoặc giải thích một bước giải
nao đó trong thuật toán Hệ thống cũng phải đáp ứng được các yêu cầu về minh
họa thuật toán đối với dữ liệu được nhập vào bởi người dùng
3/ Giao diện chương trình phải dé dàng sử dụng, phù hợp trình độ với người học Việcminh họa phải trực quan, một cách rõ ràng quá trình thực thi của thuật toán Quá trình
này mô phỏng việc hướng dẫn từng bước chạy trong thuật toán của giáo viên đối với
học sinh.
1.4 Mục tiêu, đối tượng và phạm vi nghiên cứu cúa đề tài
1.4.1 Mục tiêu của đề tài
Đề tài này xây dựng hệ cơ sở tri thức hỗ trợ học tập về Toán rời rạc và Lý thuyết đồthị cho sinh viên ngành Công nghệ thông tin Hệ thống này bao gồm:
© Cơ sở tri thức để biểu diễn tri thức môn học Toán rời rac và Lý thuyết đồ thị.
© Cac thuật giải xử lý và giải pháp suy diễn trên cơ sở tri thức đã thu thập và phân
tích các chức năng cơ bản đáp ứng yêu cầu bài toán:
Trang 21o Tra cứu kiến thức: tra cứu theo từ khóa về nội dung môn học theo
chương, khái niệm, tính chất, định lý, các dạng bài tập thông dụng cũngnhư phương pháp giải tương ứng.
o Minh họa các thuật giải đồ thị bao gồm: thuật giải duyệt đồ thi (BFS,
DFS), thuật giải Dijkstra, thuật giải tìm chu trình Euler, thuật giải tim
chu trình Hamilton, thuật giải tim cây bao trùm tối tiểu
Ứng dụng nhằm mục đích hỗ trợ sinh viên học tập nên phải đáp ứng các yêu cầu vềnội dung (yêu cầu sư phạm) cũng như về giao điện (trực quan, dễ sử dụng) Nội dungkiến thức phải được lấy từ các nguồn tài liệu đảm bảo tính khoa học, chính xác Các
nội dung phải được tham khảo từ nhiều nguồn, tổng hợp, so sánh, đối chiếu giữa các
nguồn khác nhau (có sự tham van của các chuyên gia) dé tăng tính chuẩn xác của
chương trình Các ví dụ phải được trình bay dễ hiểu, có hình minh họa.
1.4.2 Đối tượng và phạm vi nghiên cứu
Đối tượng: đành cho sinh viên Đại học, Cao đăng ngành Công nghệ thông tin hoặc
các ngành kỹ thuật.
Phạm vi nghiên cứu:
e Tri thức trong môn học “Toán rời rac” được giới hạn trong các chương sau:
o Chương 1: Cơ sở logic.
o Chương 2: Quan hệ hai ngôi.
© Phần kiến thức của Lý thuyết dé thị bao gồm các khái niệm, quan hệ, các bài
toán và thuật giải về dé thị
1.5 Bố cục luận văn
Bồ cục luận văn bao gồm các nội dung sau:
Chương 1: Tổng quan về đề tài
Trang 22Chương | nhằm giới thiệu đề tài, nêu rõ mục tiêu khoa học/công nghệ mà đề tài hướng.tới và mức độ giải quyết Trên cơ sở đánh giá tình hình nghiên cứu trong và ngoàinước, phân tích những công trình nghiên cứu, những kết quả mới nhất có liên quanđến đề tài, đánh giá những khác biệt về trình độ KH&CN trong nước và thế giới,những vấn đề đã được giải quyết, cần nêu rõ những vấn đề còn tồn tại.
Chương 2: Mô hình tri thức và các phương pháp truy vấn kiến thức về toán rời rạc.Chương 2 trình bày sơ lược các kiến thức thu thập được và từ đó lựa chọn mô hình
tri thức phù hợp với các tri thức thu thập được đáp ứng các yêu cầu tổ chức cơ sở trithức và truy vấn kiến thức Bên cạnh đó, trong chương nay sẽ trình bay các phương,
pháp truy vấn kiến thức và thuật giải có liên quan
Chương 3: Phương pháp thiết kế việc minh họa các thuật toán đồ thị
Chương 3 trình bày các yêu cầu và mô hình tri thức minh họa một thuật toán cũng.như trình bày các vấn dé về việc minh họa một thuật toán, đưa ra các thuật giải tương.ứng với từng vấn dé
Chương 4: Thiết kế chương trình và thử nghiệm
Chương 4 mô tả tong quan và trình bày các chức năng chính của ứng dụng, dua ra
kết quả thử nghiệm khi thực thi một số chức năng của chương trình
Chương 5: Kết luận và hướng phát triển
Chương 5 tổng kết lại những điểm mà đề tài đã làm được, hạn ché, khó khăn và hướngphát triển cho ứng dụng
Trang 23CHƯƠNG 2: MÔ HÌNH TRI THỨC VÀ CÁC PHƯƠNG PHÁP TRUY
VAN KIÊN THỨC TOÁN ROI RAC
2.1 Kháo sát kiến thức môn học Toán rời rạc
Toán rời rạc là một trong những môn học quan trọng trong chương trình đào tạo
ngành Khoa học Máy tính của sinh viên CNTT Toán rời rạc là cơ sở toán học để môhình hóa các hệ thống thông tin dựa trên máy tính một cách đúng đắn và hiệu quả
Những nội dung này rất quan trọng nhằm giúp sinh viên hiểu sâu về các khía cạnh
trừu tượng trong cấu tạo và hoạt động của các hệ thống tính toán
Trong khuôn khổ giới hạn luận văn, kiến thức thu thập về Toán rời rạc bao gồm phầnkiến thức về Cơ sở logic, Quan hệ hai ngôi và một phần kiến thức Lý thuyết đồ thị
Đê đảm bảo tính chính xác và độ tin cậy cao, kiến thức môn học Toán rời rạc đượcthu thập từ những giáo trình:
© Giáo Trình Toán Roi Rac của GS Nguyễn Hữu Anh
e Discrete Mathematics and Its Applications, 6th, Kenneth Rosen.
© Nguyén Cam & Chu Đức Khánh, Lý thuyết dé thi, NXB Trẻ , 1998
e RJ Wilson, Introduction Graph Theory (Sth ed.), Pearson, 2010.
2.1.1 Kiến thức về cơ sở logic
Kiến thức về “Cơ sở Logic” thu thập bao gồm những nội dung sau:
Các khái ệm cơ bản: mệnh đề logic, chân trị của mệnh đề, mệnh đề sơ cấp, mệnh
đề phức hợp, chân trị của mệnh dé, biến mệnh dé, biểu thức logic,
Trang 24Mệnh đề logic: Mệnh đề logic (gọi tắt là mệnh đề) là một câu phát biểu (về một
lĩnh vực nào đó) đúng hoặc sai một cách khách quan Ta dùng các ký hiệu A,
B, C, để chi các mệnh đề
Chân trị của mệnh đề: Tính đúng hoặc sai của một mệnh đề được gọi chân trị(hay giá trị chân lý) của mệnh đề đó
Mệnh đề sơ cấp: Mệnh dé sơ cấp (nguyên thủy) là mệnh đề không thé xây dựng
từ các mệnh dé khác thông qua liên từ hoặc trạng từ "không"
Mệnh đề phức hợp: Mệnh dé phức hợp là mệnh đề được xây dựng từ các mệnh
đề khác nhờ liên kết bằng các liên từ (và, hay, khi va chỉ khi, ) hoặc trang từ
“không”.
Chân trị của mệnh đề: Tính đúng hoặc sai của một mệnh đề được gọi chân trị
(hay giá trị chân lý) của mệnh đề đó Ta sử dụng các số nhị phân 1 (hoặc 0) đểthể hiện chân trị đúng (hoặc sai) của một mệnh đề
Biến mệnh đề: là nơi đề thay vào các mệnh đề khác nhau Các biến mệnh đề p
+ q ,có thé lấy giá trị là các mệnh dé nào đó.
Biêu thức logic: là một cấu trúc bao gồm các mệnh đề, các biến mệnh đề, các
phép toán mệnh đề ¬ , A, V, >, © liên kết các mệnh đề và biến mệnh đề
Toán tử, phép toán:
Các phép toán mệnh đề (các phép nói logic): có 5 phép toán
Phép phủ định: phủ định của mệnh đề P là một mệnh dé, kí hiệu là ¬P hay P
(đọc là “không” P hay phủ định của P).
Phép hội (nói
(đọc là P “và” Q).
iền, giao): của hai mệnh dé P, Q là một mệnh đề, kí hiệu P A Q
Phép tuyển (nối rời, hợp) của hai mệnh dé P, Q là một mệnh đề, kí hiệu P V Q
(đọc là P “hay” Q).
Trang 25© Phép kéo theo: mệnh dé P kéo theo mệnh đề Q là một mệnh đẻ, kí hiệu P — Q
(đọc là “P kéo theo Q” hay “nếu P thi Q” hay “P là điều kiện đủ của Q” hay “Q
là điều kiện cần của P”)
© Phép kéo theo hai chiều (phép tương đương): mệnh đề P kéo theo mệnh đề Q
và ngược lại (mệnh đề P tương đương với mệnh đề Q) là một mệnh đề, kí hiệu
P © Q (đọc là “P nếu va chỉ nếu Q” hay “P khi và chỉ khi Q” hay “P là điều
(Double negation law)
Luật giao hoán PAQSQAP
(Commutative laws) PVQ@QvP
Luật kết hợp PA(QAR)© (PAQ)AR
(Associative laws) PV(QVR) S(PVQ)VR
Luật phân phối PA(QVR)©(PAQ)V(PAR)
(Distributive laws) PV(QAR)©(PVQ)A(PVR)
Luật lũy đẳng PAP©P
Trang 26(Idempotent laws) PVPe©P
Luật trung hòa PAIeP
(Absorption laws) PV(PAQ) SP
Luật phủ định demorgan ¬(PAQ)©¬PV¬Q
(De Morgan’s laws) ¬(PVQ)©¬PA¬Q
© Các quy tắc suy diễn
Bảng 2 1 Các luật logic
Name Rule
Qui tắc khẳng định (Modus Ponens) [PA (P>Q)]>Q
Quy tắc phủ định (Modus tollents) [¬QA(P—>Q)]— ¬P
Qui tắc tam đoạn luận (Hypothetical syllogism) | [(P > Q) A (Q — R)] > (P — R)
Qui tắc tam đoạn luận rời (Disjunctive [PVQ)A=P]>Q
syllogism)
Trang 27Quy tắc nối liền (Conjunction) [PAQ]>(PAQ)
Resolution [PV QAGPVR)J>QvVR)
Bang 2 2 Các quy tắc Suy diễn
2.1.2 Kiến thức về quan hệ hai ngôi
Kiến thức về “Quan hệ hai ngôi” thu thập bao gồm những nội dung sau:
— Quan hệ hai ngôi trên một tập hợp và các tính chất Biểu diễn quan hệ hai ngôi
— Quan hệ tương đương Lớp tương đương Sự phân hoạch thành các lớp tương.
đương.
— Quan hệ thứ tự Thứ tự toàn phần và bán phần Biểu đồ Hassase Phần tử min
và max Các phần tử tối tiểu và tối đại
Quan hệ hai ngôi:
Một quan hệ 2 ngôi từ tập A đến tập B là tập con của tích đề các RE A x B Nếu(a,b) € R thì ta nói A có quan hệ R với b và kí hiệu aRb, ngược lại ta kí hiệu aRb Khi
A=B, ta gọi R là một quan hệ hai ngôi trên A.
Các tính chất cơ bản của một quan hệ:
© Tinh phản xạ: một quan hệ R trên tập hop A được gọi là phản xạ nếu
Vx € A, xRx
© Tinh đối xứng: một quan hệ R trên tập hop A được gọi là phản xạ nếu Vx, y €
A, xRy => yRx
¢ Tinh phản xứng: một quan hệ R trên tập hợp A được gọi là phản xứng nếu Wx,
y, (xRy) A (yRx) => x=y
© Tính bắt cầu: một quan hệ R trên tập hợp A được gọi là bắt cầu nếu
Vx,y,Z, (xRy) A (yRz) => xRz
Biểu diễn quan hệ hai ngôi: tham khảo giáo trình [21]
Trang 28Quan hệ tương đương, lớp tương đương, sự phân hạch thành các lớp tương
Khi đó R là quan hệ tương đương:
— Rõ ràng quan hệ này có tinh phản xạ và đối xứng
— Cho a, b, c sao cho a - b và b - c chia hết cho m Khi đó a -c=a-b+b-ccũng chia hết cho m Suy ra R có tính chất bắt cầu
— Quan hệ này được gọi là đồng du modulo m và chúng ta viết a = b (mod m)thay vì aRb.
e Cho R là quan hệ tương đương trên A và a € A Lớp tương đương chứa A theo
quan hệ R được kí hiệu bởi [a]a hoặc [a] là tập hợp tat cả những phan tử cóquan hệ R với a.
[alk ={beAlbRa}
© Mỗi phan từ x € [aJR được gọi là một phan tử đại điện của lớp tương đương
lala.
®© Tap thương của A theo quan hệt R, kí hiệu A/R, được định nghĩa là tập các lớp
tương đương của các phần tử thuộc A, nghĩa la A/R = { [a]a | Va e A}
e Su phân hoạch thành các lớp tương đương: tham khảo giáo trình [21].
Quan hệ thứ tự Thứ tự toàn phần và bán phần Biểu đồ Hassase Phần tử min
và max Các phần tử tối tiểu và tối
© Quan hệ thứ tự
Trang 29Một quan hệ trên tập hợp A được nói là một thứ tự nếu nó phản xạ, phản xứng và bắc
cầu Khi ấy ta nói A là một tập hợp sắp thứ tự (hay có thứ tự) Ta thường kí hiệu quan
hệ thứ tự bởi œ.
Cặp (A, &) được gọi là tập sắp thứ tự hay poset
e _ Thứ tự toàn phan va bán phan
Các phần tử của a và b của poset (S, œ) gọi là so sánh được nếu a xb hoặc b «a
Trái lại ta nói a và b không so sánh được.
Cho (S, œ) Nếu hai phan tử tùy ý của S đều so sánh được với nhau thì ta gọi (S, «)
là tập xếp thứ tự toàn phan Ta cũng nói rằng œ là thứ tự toàn phan hay thứ tự tuyếntính trên S.
Trai lại thì ta nói œ là thứ tự bán phần.
© Biểu đồ Hasse.
Ta định nghĩa biểu đồ Hasse của poset (S, <) là dé thị: Mỗi phan tử của S được biểudiễn bởi 1 điểm trên mặt phẳng
Vi dụ: T = { các ước số dương của 30 } = { 1, 2, 3, 5, 6, 10, 15, 30 } Ta có (T, 1) và
(T, :) đều là các quan hệ thứ tự bán phần (2 và 3 không là ước số và bội số của lẫn
nhau) nên biéu đồ Hasse của chúng sẽ rẽ nhánh như sau:
(S,:)
Hình 2 1 Ví dụ về biểu dé Hasse
Trang 30Phan tử min và max.
Cho (S, œ)
a) Ta nói a= min(S, «) nếu ac S và a < x, Vx € §
b) Ta nói b = max(S, «) nếu b c § vax œ b, Wx ES
c) Phan tử min (cực tiểu, nhỏ nhất) và max (cực đại, lón nhất) hoặc không tồn tại
hoặc tổn tại duy nhất
Nhận xét:
a) Trên biểu đồ Hasse của (S, <), phần tử min (nếu có) là điểm xuất phát chung
của mọi nhánh và phần tử max (nếu có) là điểm kết thúc chung của mọi nhánh
b) Nếu S hữu hạn và œ là thứ tự toàn phan thì (S, œ) luôn có min và max
© Các phần tử tối tiểu và tối đại:
Cho (S, <)
a) Ta nói a là một phan tử tối tiểu của (S, <) nếu a S và không có a’ e S \ {a} thỏa
a’ xa.
Phan tử min (nếu có) là phần tử tối tiểu đặc biệt và duy nhất
b) Ta nói b là một phan tử tối đại của (S, <) nếu b e S và không có b’ € § \ {b} thỏa
bab’.
Phan tử max (nếu có) là phan tử tối dai đặc biệt và duy nhất
c) Phan tử tối tiểu và tối đại hoặc không tồn tại hoặc tổn tại mà không nhất thiết duynhất
Nhận xét:
a) Trên biéu đồ Hasse của (S, «), phan tử tối tiểu (nếu có) là điểm xuất phát của ít
Trang 31nhất một nhánh và phan tử tối đại (nếu có) là điểm kết thúc của ít nhất một nhánh.Các phần tử cô lập của (S, «) (không so sánh được với mọi phần tử khác) xem như
là các nhánh cụt nên chúng vừa là tối tiểu vừa là tối đại
b) Nếu S hữu han và œ là thứ tự tùy ý thì (S, ©) luôn có tối tiểu và tối đại
Vi dụ: Cho (S, &) có biểu dé Hasse như sau:
o đường di, chu trình.
« Đồ thị con, và các phép toán cơ bản trên các đồ thị
Trang 32e _ Sự liên thông, các thành phan liên thông.
© Một số dạng đồ thị đặc biệt.
e _ Các thuật toán (algorithm) duyệt đồ thị cơ ban: DFS, BFS
© Su đẳng cấu (dang hình) giữa 2 đồ thị.
e Cây
o Khái niệm cây và các tính chất
o Cây bao trùm (hay cây khung), cây bao trùm tối tiểu
o Các thuật toán: PRIM, KRUSKAL.
Quan hệ giữa các đồ thị: dé thị con, sự đẳng cấu giữa hai đồ thị
© Dé thi con G S G’: Dé thị G =(V,E) được gọi là đồ thị con của đồ thị
G' =(V', FE’) nếu V GV’ và E CE’
© G=(V,E) đăng cấu với G’ = (V’,E’) nếu tồn tại song ánh f: V > V’ và V u,v
eV, uve ES f(u)f(v) e E'.
Tap các quy tắc, định lý về đồ thị, chu trình/ đường đi, cây
e Rule= { Định lý bậc của đỉnh, định lý về đồ thị có hướng, định lý Euler, định
lý về chu trình Haminlton, qui tắc tìm chu trình Hamilton, định lý về cây , định
lý về cây m-phan, }
Ví dụ: Định lý bâc của đỉnh: tổng số bậc của các đỉnh của đồ thị sẽ bằng hai lần số
Trang 33Yaw) =2IE|
Trong đó: Bậc của đỉnh (d), cạnh (E), đỉnh (V).
Các dạng bài toán, phương pháp/thuật giải về đồ thị:
© Duyệt đồ thị : thuật giải BFS, DFS,
© Bài toán đường đi ngắn nhất : thuật giải Dijkstra, thuât toán Ford-Bellman,
e Bai toán chu trình/ đường đi: thuật giải tìm chu trình Euler, thuật giải tim chu
trình Hamilton
© Cay bao trùm tối tiểu: thuật giải Prim, Prusal,
2.2 Mô hình tri thức
2.2.1 Mô hình biểu diễn tri thức môn học Rela-model
Trước đây, có rất nhiều phương pháp biéu diễn tri thức và các module xử lý tri thứctruyền thống như logic vị từ, mạng ngữ nghĩa, hệ luật dẫn, Các phương pháp nàyhướng đến việc giải quyết các van tri thức mang tính đơn lẻ, không thé biểu diễn day
đủ các miễn tri thức và rất khó khăn để xây dựng hệ thống ứng dụng trong thực tế
Bên cạnh các phương pháp truyền thống, còn có các phương pháp biểu diễn cho cácứng dụng thực tiễn mang tính hệ thống như biểu diễn bằng mang neural, ontology,xây dựng các mô hình cho việc biều diễn tri thức, Trong các công trình nghiên cứugần đây, việc ứng dụng Ontology như một hình thức biéu diễn tri thức trong các lĩnh
vực ứng dụng khác nhau đã có những bước tiến quan trọng Hệ thống tri thức dựa
trên Ontology tốt hon trong việc hỗ trợ tích hợp các tri thức, tìm kiếm kiến thức chínhxác một cách phức tạp và tránh một số lượng lớn kiến thức không liên quan Ontology
đã được sử dụng thành công trong các hệ thống chuyên gia, mạng ngữ nghĩa, Do
hình thức lý thuyết là logic mô ta, Ontology có lợi thế cả về diễn đạt ngữ nghĩa lẫn
cơ chê suy luận.
Trong Ontology về tri thức quan hệ, mô hình biểu diễn tri thức quan hệ Rela-model
được ứng dụng để biểu diễn các miền tri thức trong môn học
Trang 34Định nghĩa 2.1 [7]: Dựa trên phương pháp tiếp cận Ontology, một mô hình biểu diễntri thức quan hệ, được gọi là Rela-model gồm 3 thành phần sau:
K=(C,R, Rules) Trong do:
e Cla tập các khái niệm của miễn tri thức Mỗi khái niệm là một lớp các đối
tượng.
e R là tập các quan hệ giữa các khái niệm trong tri thức, mỗi quan hệ này là một
quan hệ hai ngôi giữa hai khái niệm trong tập C.
© Tap Rules là tập các luật của miễn tri thức Các luật trong mô hình này ở dang
luật dẫn và biểu diễn các suy luận từ các mối quan hệ giữa các khái niệm trong
tri thức.
Rela-model có các thành phần như khái niệm, quan hệ giữa các khái niệm và các quy
tắc Các khái niệm trong mô hình này bao gồm các thuộc tính (attributes), sự kiện
(facts) và quy tắc (rules) của chính nó Mỗi đối tượng trong một khái niệm được trang
bị hành vi dé giải quyết các van đề trên đó Các phương pháp giải quyết vấn đề dựatrên mô hình Rela cũng được nghiên cứu Các vấn đề chung của mô hình này như
sau: đưa ra một số đối tượng và sự kiện về chúng, xác định tập thuộc tính và sự kiện
trên đối tượng hoặc xác định một đối tượng hoặc xem xét mối quan hệ giữa các đối
tượng Bên cạnh nền tảng toán học vững chắc, Rela-model còn có một ngôn ngữ đặc
tả đơn giản, có thể biểu diễn kiến thức một cách hiệu quả, do đó nó có thể được sửdụng trong nhiều tình huống thực tế
Mô hình tri thức về quan hệ Rela-model có cấu trúc như sau:
Phần (1): Rela-model gồm 3 thành phan (C, R, Rules) Mỗi khái niệm trong C là một
lớp đối tượng, nó có cau trúc và các hành vi dé giải quyết các van đề trên đó
Phan (II): Những loại van đề này trên một đối tượng và một công cụ suy luận để giải
quyết chúng
Trang 35Phan (III): Phương pháp lập luận dé giải quyết van đề.
Cấu trúc các thành phần trong mô hình Rela-model đã được trình bày như trên Tuy
nhiên, cấu trúc của C - tập các khái niệm của miền tri thức trong nghiên cứu này có
sự thay đổi để hỗ trợ việc truy xuất nội dung kiến thức trong quá trình tra cứu như
sau: Mỗi khái niệm c € C là một lớp các đối tượng, mỗi đối tượng của một khái niệm
có cấu trúc gồm các thành phần (Attrs, Ops, RulObj, Content, Key), trong đó Attrs làtập hợp các thuộc tính của đối tượng, Ops là tập hợp các toán tử trên đối tượng,
RulObj là tập hợp các luật dẫn trên một đối tượng, Content là nội dung của khái niệm
được biểu diễn dưới dạng văn bản theo ngôn ngữ HTML, Key là tập hợp các từ khóa
để xác định khái niệm
2.2.2 Mô hình Query-Onto biểu diễn tri thức cho hệ thống tra cứu kiến
thức môn học
Định nghĩa 2.2: Ontology biểu diễn tri thức cho việc tra cứu kiến thức môn học là
mô hình được kết hợp giữa Rela-model và tri thức về các dạng bài tập được gọi là
Query-Onto Mô hình Query-Onto có cầu trúc như sau:
(C, R, Rules) + (Exer, Methods)
Trong đó (C, R, Rules) là ontology biểu diễn tri thức quan hệ Rela-model được định
én về cấu trúc thành
nghĩa trong định nghĩa 2.1, với các khái niệm trong C được cải
phan dé biểu diễn chính xác hơn ý nghĩa của khái niệm trong miền tri thức
EXER là tập hợp các dạng bài tập thông dụng trong kiến thức môn học, các dạng bài
này là những bài tập cơ bản và đặc trưng của môn học Cấu trúc của mỗi phần tử
trong tập này là một bộ gồm các thành phan:
(Name, Content, Intellectual, Hypothesis, Goal, Example)
© Name: Thành phan dé xác định dang bài tập, gồm các từ khóa (keyword) hay
mã của dạng bài tập.
© Content: Mô tả nội dung của các bài tập dưới dang ngôn ngữ tự nhiên.
Trang 36Intellectual: Biểu di liên kết của dang bai tập với các thành phan tri thức
của môn học được biểu diễn theo Rela-model
© Hypothesis: Thành phan đặc tả các giả thiết của bài tập cũng như các đối tượng
cần thiết trong bài tập theo ngôn ngữ đặc tả HTML
e Goal: Thành phan đặc tả các mục tiêu của bài tập theo ngôn ngữ đặc tả HTML.
¢ Example: Danh sách một số bài tập ví dụ cho dạng bài tập tương ứng.
Methods là tập hợp các phương pháp giải tương ứng cho các dang bài tập trong tập
hợp EXER Cấu trúc một phương pháp giải gồm có:
(Name, Idea, Exercise, Solution, Example)
¢ Name: Thanh phan dé xác định phương pháp giải, có thể gồm các từ khóa(keyphrase) hay mã (code) của dạng bài tập.
e Idea: Mô tả ý tưởng của phương pháp giải.
« Solution: Thành phan đặc tả chỉ tiết nội dung các bước giải trong phương pháp
theo ngôn ngữ HTML.
e Example: Danh sách các bài giải ví dụ cho các bài tập tương ứng cũng trong
thành phần Example của EXER
2.2.3 Tổ chức mô hình tri thức
> Mô hình phần Cơ sở logic
Kiến thức thu thập phần kiến thức về Cơ sở logic thu thập từ [21, 22], được biểu diễnbằng mô hình Query-Onto Bên cạnh các dạng bài tập và phương pháp giải của mônhọc, một số kiến thức của môn học được biểu diễn bởi 3 thành phần (C, R, Rules)
Tập hop các khái niệm -C
+ Cấp Co)
Các khái niệm cơ bản: mệnh đề logic, mệnh đề sơ cấp, mệnh đề phức hợp, chân trịcủa mệnh đề, biến mệnh đề
Trang 37+ Cấp Cay
Mối khái niệm thuộc Cụ; là một lớp các đối tượng Cầu trúc mỗi khái niệm là một bộ
gồm 5 phần:
(Attrs, Ops, RulObj, Content, Key)
Vi dụ: Khái niệm “Mệnh dé logic” e C có cấu trúc
Ca) = (Attrs, Ops, RulObj, Content, Key)
Attrs: {0, 1}: là tập hợp các giá trị chân tri (1: đúng, 0: sai)
Ops: là tập hợp các các phép toán trong mệnh đề: Ops = { ¬, A, V, >, © }, ¬ là toán
tử phủ định va A, V, >, © là toán tử nhị phân : phép hội, phép tuyển, phép kéo theo,phép kéo theo 2 chiều
RulObj: { }
Tập hop các quan hé-R
R= {is-a, ©}
+ Tập các quan hệ is-a giữa các khái niệm trong miền kiến thức về logic mệnh dé:
ci is-a cj: khái niệm cj là khái niệm cj, với ci, cj) Cụ;
+ Tương đương logic (©): Hai dạng mệnh đề E, F được nói là chúng tương đương
logic nếu chúng có cùng bảng chân trị
Tập hop các luật — Rules:
Rules = { Rig, Rri }
+ Rig là một tap các quy tắc tương đương: x(r), u (r) © v (r), trong đó x(r), u (r) và v
(r) là các tập các sự kiện thỏa mãn: x(r) , u (r) > v (r), và x(r), v (r) > u (r) là đúng.
+ Rri: tập các quy tắc suy diễn có dang u (r) — v (r), trong đó u (r), v (r) a tập hợp
các sự kiện
> Mô hình phần Quan hệ
Trang 38Tập hop các khái niệm —- C
Tap C gồm các khái niệm cơ bản liên quan đến quan hệ 2 ngôi, quan hệ thứ tự, quan
hệ tương đương, biéu đồ Hassase,
Vi dụ:
Một quan hệ 2 ngôi từ tap A đến tập B là tập con của tích đề các RE A xB
Một quan hệ R trên tập A được gọi là quan hệ tương đương nếu nó phản xạ, đối xứng,
bắt cầu
Một quan hệ trên tập hợp A được nói là một thứ tự nếu nó phản xạ,phản xứng và bắccầu Khi ấy ta nói A là một tập hợp sắp thứ tự (hay có thứ tự)
Tập hợp các luật - Rules: bao gồm các tính chất của một quan hệ (tính phan xạ, tối
đối xứng, phản xứng, bắt cầu, ), định lý về quan hệ tương đương
Tính phản xạ: một quan hệ R trên tập hợp A được gọi là phản xạ nếu Vx e A, xRx
Tính đối xứng: một quan hệ R trên tập hợp A được gọi là phản xạ nếu Vx, y e A, xRy
> Mô hình phan Ly thuyết đồ thị
Kiến thức thu thập phần kiến thức về Lý thuyết đồ thị thu thập từ [23, 24], được biểudiễn bằng mô hình Query-Onto Bên cạnh các dạng bài tập và phương pháp giải củamôn học, một số kiến thức về phan Lý thuyết đồ thị được biéu diễn bởi 3 thành phan(C, R, Rules).
Tập hop các khái niệm — C
Trang 39Gồm các khái niệm cơ bản:
C ={ Đồ thị và các loại đồ thi, chu trình, thuật toán }
+ Đồ thị: khái niệm về đồ thị, tính liên thông, Khái niệm này có tập thể hiện Ipo
THỊ
+ Đinh: khái niệm về đỉnh kề Bậc của đỉnh, Khái niệm này có thập thé hiện Ipinn
+ Cạnh: Cạnh được tao từ tap hợp các đỉnh lcẠnh
+ Hướng: Hướng từ đỉnh này đến đỉnh kia của đồ thị Khái niệm này có tập thé hiệnTHƯỚNG
+ Đường đi: đường đi ngắn nhất, đường di Hamilton
+ Cây:
+ Chu trình: Chu trình Hamilton
+ Ma trận: khái niệm ma trận kể, ma trận liên thuộc
Mối khái niệm thuộc c € C là một lớp các đối tượng
Vi dụ: Khái niệm DO THỊ e C có cấu trúc:
(Attrs, Ops, RulObj, Content, Key) Attrs: = {n, m, V, E, Adj, connected}
© Adj: Ma trận kể biểu diễn đồ thị
© connected: giá trị Boolean cho biết đồ thị có liên thông hay không
Ops = {degree, Path}
e degree(*This): bậc của đồ thị
Trang 40© Path(x, y): danh sách các đỉnh của đường đi từ x đến y (x, y e E) Nếu không
có đường đi thì đây là danh sách rỗng
RulObj: = {connected = true}
> {Vi,j, l<i,j <n: 3 Path(, xj) C E}
Content: Nội dung về lý thuyết về khái niệm đã được thu thập
Key = {“đồ thị”, “đỉnh”, “cạnh”, “chu trình”, “đường đi”, “liên thông”}
Tập hợp các quan hệ — R
r= {Z, isomorphism}
+G ZG’: Đồ thi G là dé thi con của G’, với G, G' e DO THỊ
+ G isomorphism G’: Dé thị G đăng cấu với đồ thi G’, với G, G' ĐỎ THỊ
* Quan hệ “isomorphism” có tính chất đối xứng
+ cạnh = (Ipinn X Ipiwn): cạnh được tạo từ 2 đỉnh Cạnh có tinh chất đối xứng
+ kể C loinn x Ipinn : Quan hệ kề giữa 2 đỉnh Quan hệ “ké” có tính chất đối xứng
+ thuộc C Icanu X lpiwn : quan hệ giữa một đỉnh thuộc một cạnh.
+ trùng (=) C Ibo THỊ X Ibo THy : Quan hệ trùng nhau giữa hai đồ thị
Tập hợp các luật — Rules: