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

Một số phương pháp xử lý truy vấn mới trên cơ sở dữ liệu hướng đối tượng mờ TT

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 (1.72 MB, 27 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO

VIỆN HÀN LÂM KHOA HỌC
VÀ CÔNG NGHỆ VIỆT NAM

HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ

……..….***…………

NGUYỄN TẤN THUẬN

MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ
SỞ DỮ LIỆU HƯỚNG ĐỐI TƯỢNG MỜ

Chuyên ngành: Hệ thống thơng tin
Mã số: 62 48 01 04

TĨM TẮT LUẬN ÁN TIẾN SỸ NGÀNH MÁY TÍNH

Hà Nội – 2021


Cơng trình được hồn thành tại: Học viện Khoa học và Công nghệ Viện Hàn lâm Khoa học và Công nghệ Việt Nam

Người hướng dẫn khoa học 1: GS.TS. Đoàn Văn Ban
Người hướng dẫn khoa học 2: TS. Trương Ngọc Châu

Phản biện 1: …
Phản biện 2: …
Phản biện 3: ….


Luận án sẽ được bảo vệ trước Hội đồng chấm luận án tiến sĩ, họp tại
Học viện Khoa học và Công nghệ - Viện Hàn lâm Khoa học và Công
nghệ Việt Nam vào hồi … giờ ..’, ngày … tháng … năm 201….

Có thể tìm hiểu luận án tại:
- Thư viện Học viện Khoa học và Công nghệ
- Thư viện Quốc gia Việt Nam


DANH MỤC CÁC CƠNG TRÌNH CỦA TÁC GIẢ

1

Nguyễn Tấn Thuận, Đoàn Văn Ban, Trương Ngọc Châu, Trần Thị Thúy Trinh (2015),
“Phương pháp xử lý truy vấn đa điều kiện trong cơ sở dữ liệu hướng đối tượng mờ
dựa trên đại số Gia Tử”, Tạp chí Khoa học Đại học Sư phạm Hà Nội 1, 7, 2015, 157168

2

Nguyễn Tấn Thuận, Trần Thị Thúy Trinh, Đoàn Văn Ban, Trương Ngọc Châu,
“Analysis of fuzzy query processing and optimization in fuzzy object oriented
database”, Fair - Hội nghị khoa học Quốc Gia lần thứ IX về nghiên cứu cơ bản và
ứng dụng CNTT, Trường Đại học Cần Thơ , 2016, pp 24-31.

3

Nguyễn Tấn Thuận, Trần Thị Thúy Trinh, Đoàn Văn Ban, Trương Ngọc Châu,
“Statistics-theoretical approach for evaluating the similarity of fuzzy objects in
fuzzyobject-oriented databases”, Hội thảo quốc gia lần thứ XIX: Một số vấn đề chọn
lọc của Công nghệ thông tin và truyền thông – Hà Nội, Trường Đại học Sư Phạm Hà

Nội 1-2/10/2016, 306-312.

4

Thuan T.Nguyen , Ban D.Van, Chau N.Truong, “Qurey Processing and Optimazation
in Fuzzy Object Oriented Database”, LAP LAMBERT Academic Publishing, ISBN
978-620-2-05295-5, 2017, 52 papers.

5

Nguyen, T. T., Doan, B. V., Truong, C. N.,& Tran, T. T, “A New Approach for Query
Processing and Optimization Base on the Fuzzy Object Algebra and Equivalent
Transformation Rules”. Transactions on Machine Learning and Artificial
Intelligence, 2017, 5(2), 18. (scopus)

6

Nguyen, T. T., Van Doan, B., Truong, C. N., & Tran, T. T. T. “Clustering and Query
Optimization in Fuzzy Object-Oriented Database”. International Journal of Natural
Computing Research (IJNCR), 8(1),2019, 1-17. (DBLP)


1
MỞ ĐẦU
Ngày nay, tính khả thi và tính hữu ích của toán học mờ như lý thuyết xác suất, lý thuyết tập mờ, lý
thuyết khả năng, quan hệ tương tự [1] - [6], ..., đã được minh chứng cho sự thành công trong một
loạt các lĩnh vực gồm: kỹ thuật, khoa học máy tính, trí tuệ nhân tạo, xử lý thông tin và các hệ thống
cơ sở dữ liệu (CSDL) [7] - [11]. Cùng với sự phát triển của toán học mờ, các mơ hình CSDL hướng
đối tượng đã được nghiên cứu và áp dụng rộng rãi trong việc phát triển các hệ thống phần mềm,
nhiều hệ quản trị CSDL hướng đối tượng có tính thương mại đã được tạo ra như GEMSTONE,

ORION, VBASE, OBJECTSTORE, POET,….
Thông qua các kết quả nghiên cứu trên, việc áp dụng lĩnh vực toán học mờ vào các mơ hình
cơ sở dữ liệu truyền thống/hướng đối tượng, nhằm xử lý và lưu trữ các thông tin không chắc chắn,
không đầy đủ là rất cần thiết. Một số đề xuất và triển khai toán học mờ đẫ được áp dụng hiệu quả
trên các hệ thống quản lý cơ sở dữ liệu nói chung như [12] - [15] và như vậy mơ hình cơ sở dữ liệu
hướng đối tượng mờ đã được đề xuất trên cơ sở áp dụng toán học mờ [16] - [21].
Một số nghiên cứu liên quan về mơ hình cơ sở dữ liệu hướng đối tượng mờ đã đề xuất như:
 Các mô hình CSDL HĐT mờ: Mơ hình cơ sở dữ liệu hướng đối tượng mờ đã được đề xuất
bởi M.Umano và các cộng sự [22]. Mơ hình với thơng tin khơng chắc chắn được đề xuất
bởi Gyseghem và Caluwe [23]. Mô hình mở rộng dựa trêsn đồ thị do G. Bordogna và các
cộng sự [16], [21]. Mơ hình dựa trên quan hệ tương tự, phạm vi của các giá trị thuộc tính
được sử dụng để biểu diễn tập các giá trị cho phép của một thuộc tính trong một lớp được
trình bày trong [24]. Mơ hình dựa vào lý thuyết khả năng, tính mơ hồ được biểu diễn trong
phân cấp lớp [25], [26]. Mơ hình dựa trên lý thuyết xác suất đầu tiên được nhóm tác giả
Kornatzky và Shimony đề xuất năm 1994 [27]. Bên cạnh đó một mơ hình mới về xác suất
đã được B. Ding và các cộng sự đề xuất [28].
 Tiền xử lý dữ liệu (đối sánh và gom cụm) cho mơ hình CSDL HĐT mờ: Thuật toán GNP
phân cụm cơ sở dữ liệu [29]. Việc tối ưu hóa các cụm được thực hiện để các đối tượng có
độ tương tự cao được đưa vào cùng một cụm. L. Zhu và các cộng sự [30]. Đề xuất mới của
M. C. Mouna và các cộng sự [31] về phương pháp tính tốn tính tương tự để so sánh hai
đối tượng mờ thơng qua các thuộc tính mờ bằng cách sử dụng độ đo khoảng cách Euclide.
A. Mhedhbi và S. Salihoglu [4] phát triển phép đo độ tương tự dựa trên mơ hình đối sánh
Tversky và áp dụng nó trên các tập mờ bằng cách sử dụng lý thuyết tập mờ và các phép
toán của chúng.
 Xử lý và tối ưu hóa truy vấn: X. Hu và các cộng sự phát triển [32] mơ hình dữ liệu hướng
đối tượng mờ mới (F-model) và định nghĩa đại số kết hợp mờ mở rộng (FA-algebra). Đề

xuất [33] tối ưu hóa truy vấn dựa vào biểu thức đường dẫn và cách viết lại
câu truy vấn
Tuy nhiên, trong các mơ hình đề xuất trên cịn thiếu định nghĩa chính thức một thiết kế kiến

trúc, định nghĩa về các phép toán đại số đối tượng mờ và ngơn ngữ truy vấn. Do đó cần có một đề
xuất mới nhằm đảm bảo tính hệ thống cho mơ hình cơ sở dữ liệu hướng đối tượng mờ hoạt động hiệu
quả hơn.
Mục tiêu của luận án là đề xuất đại số đối tượng mờ mới, kiến trúc xử lý truy vấn và phương
pháp tối ưu hóa truy vấn dựa trên đại số đã đề xuất kết hợp với các giải pháp như phép biến đổi tương
đương và giải thuật Heuristic
Các vấn đề liên quan đến mục tiêu nghiên cứu được trình bày trong luận án bao gồm.
1. Nhằm tăng tính hiệu quả cho q trình xử lý truy vấn dữ liệu có các đại diện thơng tin là
mờ, luận án đề xuất phương pháp gom cụm và so sánh tính tương tự giữa hai đối tượng
một cách tổng quát nhất, cụ thể hơn để so sánh tính tương tự giữa hai đối tượng luận án đã


2
sử dụng các kỹ thuật khác nhau đó là: tính độ đo ngữ nghĩa, độ đo Euclidean. Bên cạnh đó,
luận án đề xuất thuật toán gom cụm EMC được cải tiến dựa trên thuật toán Expectation
Maximization (EM). Để đảm bảo cho hệ thống thực hiện câu truy vấn linh động và tự nhiên
hơn, luận án đề xuất phương pháp phân các khoảng mờ dựa trên kết quả của thuật toán gom
cụm EMC.
2. Thông qua các đề xuất đối sánh và gom cụm dữ liệu, luận án đã đề xuất các thuật toán xử
lý truy vấn mờ mới như: Thuật toán xử lý truy vấn đơn, đa điều kiện mờ FQSIMSC (Fuzzy
Query Sim Single Condition) và FQSIMMC (Fuzzy Query Sim Multi-Condition). Hơn
nữa, luận án cũng đã đề xuất thuật toán xử lý truy vấn trên các khoảng mờ FQINTERVAL
(Fuzzy Query Interval), nhằm giúp người dùng thực hiện trích lọc dữ liệu tự nhiên hơn.
3. Đề xuất đại số kết hợp mờ mới. Trong đó luận án đã định nghĩa các phép toán kết hợp mờ
như (Phép chọn mờ, phép nối mờ, phép chiếu mờ, phép chia mờ, phép trừ mờ, phép hợp
mờ và phép giao mờ làm cơ sở cho việc xây dựng đại số truy vấn mờ cho mơ hình cơ sở
dữ liệu hướng đối tượng mờ.
4. Luận án đề xuất kiến trúc xử lý và tối ưu hóa truy vấn mờ. Cụ thể, luận án phát triển thuật
toán heuristic tối ưu hóa đại số đối tượng mờ dựa trên các quy tắc của phép biến đổi tương
đương. Phân tích trên một số thử nghiệm sử dụng thuật toán đề xuất cho thấy hiệu suất xử

lý truy vấn tốt hơn, điều này chứng tỏ sự nâng cao hiệu quả của phương pháp đã đề xuất.
Để thực hiện được các mục tiêu trên, luận án được tổ chức như sau: Luận án được chia thành
3 chương, trong đó:
Chương thứ nhất trình bày khái quát về cơ sở dữ liệu hướng đối tượng mờ. Nội dung của chương
này bao gồm: các khái niệm, các phép toán cơ bản của lý thuyết tập mờ. Trong chương này trình bày
cụ thể mơ hình cơ sở dữ liệu hướng đối tượng với các khái niệm về đối tượng mờ, lớp mờ, phân cấp
thừa kế mờ và mơ hình lớp mờ và các quan hệ mờ.
Chương thứ hai giới thiệu bốn thuật toán xử lý truy vấn mờ mới đó là FQSIMSC (Fuzzy Query Sim
Single Condition), FQSIMMC (Fuzzy Query Sim Multi-Condition), FQSEM (Fuzzy Query SEM)
và FQINTERVAL (Fuzzy Query Interval) nhằm tăng tính hiệu quả cho quá trình xử lý dữ liệu: Trong
đó ba thuật tốn (FQSIMSC, FQSIMMC, FQSEM) sử dụng độ đo tương tự dựa vào các đại lượng
tính tốn của (SIM, SEM), thuật tốn thứ tư FQINTERVAL xử lý truy vấn trực tiếp trên các khoảng
mờ dựa vào thuật toán gom cụm dữ liệu EMC được cải tiến từ thuật toán gom cụm dữ liệu cực đại
hóa kỳ vọng (EM) được đề xuất trong chương này .
Chương thứ ba giới thiệu các phép toán đại số đối tượng mới như (phép chiếu mờ, giao mờ, hợp
mờ, chọn mờ, trừ mờ, tích đề các mờ, nối mờ) và các phép biến đổi tương đương mờ. Một chủ đề
không thể thiếu đối với mọi hệ quản trị cơ sở dữ liệu đó là tối ưu hóa truy vấn bằng phương pháp
Heuristic.


3

Chương 1 TỔNG QUAN VỀ BÀI TOÁN XỬ LÝ TRUY VẤN TRÊN MƠ HÌNH CƠ SỞ
DỮ LIỆU HƯỚNG ĐỐI TƯỢNG MỜ

1.1 Giới thiệu bài tốn
Trong thực tế, hệ thống thơng tin chủ yếu sử dụng CSDL quan hệ [12], [14], [34] - [38], hoặc
CSDL hướng đối tượng [39] - [42] để lưu trữ các tập hợp dữ liệu này. Cả hai mơ hình CSDL quan
hệ và CSDL hướng đối tượng có khả năng đủ để xử lý đối tượng phức tạp nhưng bị hạn chế đối với
các đại diện dữ liệu khơng chính xác hoặc khơng chắc chắn. Do đó, việc nghiên cứu ứng dụng cơ sở

dữ liệu mờ và xử lý truy vấn để giải quyết những hạn chế của cơ sở dữ liệu quan hệ/hướng đối tượng
rõ trong việc xử lý và lưu trữ các thông tin không chắc chắn, không đầy đủ trở thành một chủ đề
nghiên cứu quan trọng được nhiều nhà khoa học tập trung nghiên cứu [2], [17], [30], [43] - [68].

1.2 Các nghiên cứu liên quan
Trong những năm qua đã có nhiều nghiên cứu liên quan về mơ hình cơ sở dữ liệu hướng đối tượng
mờ theo các cách tiếp cận khác nhau và các kết quả đạt được trên các mơ hình này là:
1.2.1 Mơ hình CSDL HĐT mờ
Mơ hình cơ sở dữ liệu hướng đối tượng mờ đã được đề xuất dựa vào: thuộc tính có giá trị mờ
M.Umano và các cộng sự [22], quan hệ kế thừa và lý thuyết tập mờ Gyseghem và Caluwe [23], mở

rộng mơ hình đối tượng dựa trên đồ thị G. Bordogna và các cộng sự [16], [21], quan hệ tương
tự [24], lý thuyết khả năng [25], [26], lý thuyết xác suất Kornatzky và Shimony đề xuất năm 1994
[27].

1.2.2 Tiền xử lý dữ liệu (đối sánh và gom cụm) cho mơ hình CSDL HĐT mờ
Thuật toán phân cụm cơ sở dữ liệu sử dụng lập trình mạng di truyền (GNP), L. Yan và Z. M. Ma
[29]. Y. Bashon và các cộng sự [31], so sánh hai đối tượng mờ thơng qua các thuộc tính mờ bằng
cách sử dụng độ đo khoảng cách Euclide. Y. Bashon và các cộng sự [4].
1.2.3 Xử lý và tối ưu hóa truy vấn mờ
S. Na và S. Park [32] đề xuất mơ hình dữ liệu hướng đối tượng mờ mới (F-model) và định nghĩa đại
số kết hợp mờ mở rộng (FA-algebra). P. K. Panigrahi và A. Goswami [19].
1.3 Các vấn đề nghiên cứu và giải pháp
1.3.1 Biểu diễn thông tin khơng hồn hảo trong mơ hình khái niệm dữ liệu mờ

1.3.2 Mơ hình hóa UML của dữ liệu mờ
Phần này mở rộng biểu đồ lớp UML để biểu diễn thông tin mờ [3]. Vì các cấu trúc của UML chứa
lớp và các mối quan hệ, nên việc mở rộng các cấu trúc này được tiến hành dựa trên các tập mờ.

1.3.3 Lớp mờ

Về mặt lý thuyết, một lớp có thể được xem xét từ hai quan điểm khác nhau: Một lớp mở rộng (kế
thừa), trong đó lớp được xác định bởi danh sách các cá thể đối tượng, một lớp nguyên [3], trong đó
lớp được xác định bởi một tập các thuộc tính và các giá trị có thể chấp nhận. Theo Zvieli và Chen
̃ = (𝐶̃ , 𝐴̃, 𝑅̃ , 𝑂̃): Mức lớp, mức đối tượng, mức giá trị thuộc tính.
[6], một lớp có ba mức độ mờ 𝐷
Hình 1.1 mơ tả lớp nhân viên trẻ mờ

Hình 1.1. Lớp mờ


4

1.3.4 Tổng quát hóa mờ
Kế thừa là một cơ chế quan trọng trong mơ hình dữ liệu hướng đối tượng cho phép một lớp được gọi
là lớp con kế thừa các thuộc tính và phương thức từ một lớp khác được gọi là lớp cha. Hình 1.2 mơ
tả quan hệ tổng qt hóa mờ

Hình 1.2. Quan hệ tổng qt mờ

1.3.5 Kết tập mờ
Là một dạng đặc biệt của liên kết mơ hình hóa mối quan hệ tồn thể-bộ phận (whole - part) giữa đối
tượng toàn thể và các bộ phận của nó. Hình 1.3 mơ tả quan hệ kết tập mờ

Hình 1.3.Mối quan hệ kết tập mờ

1.3.6 Mối kết hợp mờ
Mối quan hệ kết hợp được định nghĩa là mối quan hệ cấu trúc nhị phân giữa hai lớp liên kết chúng,
được chỉ định bằng các đối tượng của một lớp kết nối với các đối tượng của lớp khác. Hình 1.4 mơ
tả quan hệ kết hợp mờ.


Hình 1.4.Mối quan hệ kết hợp mờ

1.3.7 Phụ thuộc mờ
Sự phụ thuộc biểu thị mối quan hệ giữa nhà cung cấp / khách hàng giữa các phần tử của mơ hình,
trong đó việc chỉnh sửa thơng tin nhà cung cấp có thể ảnh hưởng đến các phần tử mơ hình khách
hàng. Mối quan hệ phụ thuộc khác với mối quan hệ kết hợp ở chỗ nó chỉ mang tính đơn hướng. Hình
1.5 mơ tả quan hệ phụ thuộc mờ.
Nhân viên Dependent WITH 0.85 DEGREE

Nhân viên WITH 0.85 DEGREE

Hình 1.5. Mối quan hệ phụ thuộc mờ
1.4 Ánh xạ mơ hình dữ liệu UML mờ vào mơ hình cơ sở dữ liệu hướng đối tượng mờ

1.4.1 Mơ hình cơ sở dữ liệu hướng đối tượng mờ (FOODB)
Ma và cộng sự [73] đã phát triển một mơ hình cơ sở dữ liệu hướng đối tượng mờ (FOODB) trong đó
các lớp có thể mờ.
1.4.2 Chuyển đổi biểu đồ lớp UML mờ
1.4.2.1 Chuyển đổi các lớp
Các lớp trong mơ hình dữ liệu UML thường tương ứng với các lớp trong lược đồ cơ sở dữ liệu hướng
đối tượng và các thuộc tính của các lớp trong mơ hình dữ liệu UML tương ứng với các thuộc tính
của các lớp trong lược đồ cơ sở dữ liệu hướng đối tượng. Hình 1.6 biểu diễn chuyển đổi các lớp mờ.


5

Hình 1.6.Chuyển đổi các lớp trong UML mờ sang lược đồ cơ sở dữ liệu hướng đối tượng mờ.
Hình 1.7 cho thấy sự chuyển đổi của các lớp con trong mơ hình dữ liệu UML mờ sang lược đồ cơ sở
dữ liệu hướng đối tượng mờ.


Hình 1.7.Chuyển đổi các lớp con trong UML mờ sang lược đồ cơ sở dữ liệu hướng đối tượng mờ
1.4.2.2 Chuyển đổi quan hệ kết tập
Tập hợp xác định mối quan hệ toàn bộ giữa các bộ phận cấu thành và tổng thể là một lớp đại diện
cho tổng thể. Trong mơ hình dữ liệu UML mờ, tập hợp (mờ) có thể được chuyển đổi thành một lớp
trong lược đồ cơ sở dữ liệu hướng đối tượng mờ, được gọi là lớp tổng hợp, theo sự biến đổi của các
lớp đã cho ở trên. Hình 1.8 cho thấy sự chuyển đổi các tập hợp trong mơ hình dữ liệu UML mờ sang
lược đồ cơ sở dữ liệu hướng đối tượng mờ.

Hình 1.8.Chuyển đổi các tập hợp trong UML mờ sang lược đồ cơ sở dữ liệu hướng đối tượng mờ


6
1.4.2.3 Chuyển đổi quan hệ kết hợp
Quan hệ kết hợp trong mơ hình dữ liệu UML được chuyển đổi thành quan hệ kết hợp trong lược đồ
đối tượng, mô tả các thuộc tính trong một lớp kết hợp tham chiếu tường minh đến một lớp khác.
Trong mơ hình dữ liệu UML mờ, có thể phân biệt ba loại kết hợp cơ bản, như sau: Các kết hợp khơng
có bất kỳ độ mờ nào, Các kết hợp chỉ có độ mờ ở cấp độ thứ hai, Các kết hợp chỉ có độ mờ ở cấp độ
đầu tiên. Hình 1.9 biểu diễn chuyển đổi quan hệ kết hợp mờ.

đổi các liên kết trong UML mờ sang lược đồ cơ sở dữ liệu hướng đối tượng mờ.
1.4.2.4 Chuyển đổi các quan hệ phụ thuộc
Trong mối quan hệ phụ thuộc mờ, lớp khách hàng phụ thuộc mờ vào lớp nhà cung cấp. Có một số
kỹ thuật chung để biến đổi mối quan hệ phụ thuộc (mờ). Kỹ thuật thứ nhất là bàn về lớp độc lập. Kỹ
thuật thứ hai là bàn về mối quan hệ kết. Kỹ thuật cuối cùng là bàn về sự kết hợp.
1.4.3 Truy vấn mờ FOQL
Hình 1.9: Chuyển

1.5 Giải pháp cho bài toán
Luận án đề xuất ba giải pháp sau:
- Tiền xử lý dữ liệu: Luận án đề xuất phương pháp gom cụm và so sánh tính tương tự giữa hai đối

tượng.
- Xử lý truy vấn mờ: Luận án đề xuất một số phương pháp xử lý truy vấn mới mới dựa vào độ đo
tương tự và gom cụm dữ liệu
- Đề xuất đại số kết hợp mờ mới. Trong luận án đã định nghĩa các phép toán kết hợp mờ mới làm cơ
sở cho việc xây dựng đại số truy vấn mờ trên mơ hình cơ sở dữ liệu hướng đối tượng mờ. Luận án
đề xuất phương pháp xử lý và tối ưu hóa truy vấn mờ.

1.6 Kết luận chương 1
Các mơ hình trên đều dựa vào mơ hình dữ liệu đối tượng chuẩn ODMG, đồng thời kết hợp
ngôn ngữ mơ hình hóa UML để biểu diễn trực quan hóa cho các khái niệm mờ như: Mức
lược đồ mờ, mức thể hiện lớp mờ, mức thuộc tính mờ. Bên cạnh đó các khái niệm mờ cũng
đã được áp dụng vào các mối quan hệ như: Tổng quát hóa mờ, kết tập mờ, kết hợp mờ và
phụ thuộc mờ. Các biểu diễn này nhằm mục đích mơ hình hóa dưới các góc nhìn về mơ hình
hóa logic và vật lý để từ đó luận án đề xuất các phép tốn đại số đối tượng mờ cho câu truy
vấn và các phương pháp xử lý truy vấn dựa vào các khả năng của thuộc tính có thể biểu diễn
các giá trị mờ nhằm thực hiện việc xử lý và trích rút dữ liệu/thông tin không chắc chắn,
không đầy đủ trên FOODB sẽ được trình bày cụ thể trong chương 2 và 3.


7

Chương 2 CÁC PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỜ DỰA VÀO ĐỘ ĐO TƯƠNG
TỰ VÀ GOM CỤM DỮ LIỆU
Mô hình cơ sở dữ liệu hướng đối tượng mờ rất phức tạp vì các đối tượng lưu trữ và xử lý có thể là
mờ hoặc rõ phụ thuộc vào kiểu thuộc tính và giá trị của thuộc tính đó là khơng chắc chắn, khơng
chính xác, mơ hồ, và có các mối quan hệ giữa các đối tượng là mờ [21], [74] - [77]. Chính vì sự phức
tạp của mơ hình này mà cần phải có các hướng tiếp cận riêng cho một tập hợp của quá trình tiền xử
lý dữ liệu cho truy vấn mờ. Chương này, giới thiệu phương pháp truy vấn dữ liệu mới dựa vào độ đo
tương tự (SIM, SEM và DIS ) nhằm trích rút thơng tin thỏa mãn các điều kiện về mức độ tương tự
giữa các đối tượng có giá trị thuộc tính mờ hoặc rõ. Đề xuất thuật toán xử lý truy vấn dựa vào thuật

toán gom cụm dữ liệu cải tiến EMC và phân vùng mờ. Các kết quả chính được trình bày trong chương
này liên quan đến so sánh tính tương tự, gum cụm dữ liệu và xây dựng vùng mờ được công bố [CT3],
[CT6].

2.1 Xử lý truy vấn mờ dựa vào độ đo tương tự
2.1.1 So sánh tính tương tự của hai đối tượng mờ
2.1.1.1 So sánh hai đối tượng dựa vào độ đo tương tự mờ
Khi so sánh hai đối tượng mờ, ta cần xem xét các trường hợp sau:
 Trường hợp I: so sánh hai thuộc tính mờ.
 Trường hợp II: so sánh một thuộc tính rõ với một thuộc tính mờ và ngược lại.
 Trường hợp III: so sánh hai đối tượng có cùng thể hiện của một lớp.
 Trường hợp IV: so sánh hai đối tượng là thể hiện của hai lớp khác nhau.
A. So sánh hai thuộc mờ
Định nghĩa 2.1: Cho hai đối tượng 𝑜1 𝑣à 𝑜2 các tập các tập thuộc tính tương ứng như sau 𝑎𝑡𝑂1 =
{𝑎1 , 𝑎1 , … , 𝑎𝑛 } và 𝑎𝑡𝑂2 = {𝑏1 , 𝑏1 , … , 𝑏𝑛 }. Tính tương tự 𝑆: 𝑎𝑡𝑂1 × 𝑎𝑡𝑂2 → [0; 1] giữa hai thuộc
tính tương ứng với 𝑎𝑗 , 𝑏𝑗 được định nghĩa như sau:
𝑆(𝑎𝑗 , 𝑏𝑗 ) =

1 − 𝑑(𝑎𝑗 , 𝑏𝑗 )
1 + 𝑘𝑗 𝑑(𝑎𝑗 , 𝑏𝑗 )

; 𝑣ớ𝑖 𝑘𝑗 ≥ 0

(2.1)

Trong đó 𝑎𝑗 𝑣à 𝑏𝑗 là thuộc tính thứ j với j=1, 2,…, n, n là số thuộc tính và độ đo khoảng cách
metric d được biểu diễn bằng ánh xạ ⊕𝑗 : [0; 1]𝑚𝑗 → [0; 1] như sau:
𝑑(𝑎𝑗 , 𝑏𝑗 ) =⊕𝑗 (𝑑𝑖𝑠(𝐴1𝑗 , 𝐵1𝑗 ), 𝑑𝑖𝑠(𝐴2𝑗 , 𝐵2𝑗 ), … , 𝑑𝑖𝑠 (𝐴𝑚𝑗 𝑗 , 𝐵𝑚𝑗 𝑗 ))

(2.2)


trong đó 𝐴𝑚𝑗𝑗 , 𝐵𝑚𝑗𝑗 giá trị thuộc tính tương ứng của 𝑎𝑗 𝑣à 𝑏𝑗 , với 𝑚𝑗 là số lượng các tập mờ đại diện
cho giá trị của thuộc tính thứ j trên miền cơ bản 𝑈𝑗 . ⊕𝑗 có thể được xác định bằng cách tổng cho tất
cả bình phương khoảng cách Euclide của tập con mờ chia cho số tập mờ 𝑚𝑗 :
𝑚

2

1⁄
2

𝑗
∑𝑖=1
𝑑𝑖𝑠(𝐴𝑖𝑗 , 𝐵𝑖𝑗 )
𝑑(𝑎𝑗 , 𝑏𝑗 ) = [
]
𝑚𝑗

(2.3)

Khoảng cách 𝑑𝑖𝑠: 𝐹(𝑈𝑗 ) × 𝐹(𝑈𝑗 ) → [0; 1] mơ tả sự khác biệt giữa các tập mờ và nó có thể được
xác định trong hai trường hợp sau:
a) Nếu thuộc tính 𝑎𝑗 và 𝑏𝑗 là các giá trị ngơn ngữ và ngữ nghĩa của chúng được xác định bằng
cách sử dụng các tập mờ được thể hiện bởi cùng một hàm thành viên (ví dụ: 𝜇𝐴𝑖𝑗 (𝑥) =
𝜇𝐵𝑖𝑗 (𝑥) với mọi 𝑥 ∈ 𝑈𝑗 , ví dụ so sánh hai phịng học (xem Hình 2.1 trong ví dụ 2.1), sau đó:
𝑑𝑖𝑠(𝐴𝑖𝑗 , 𝐵𝑖𝑗 ) = |𝜇𝐴𝑖𝑗 (𝑥) − 𝜇𝐴𝑖𝑗 (𝑦)| ; với mọi 𝑥, 𝑦 ∈ 𝑈𝑗

(2.4)

b) Nếu các thuộc tính 𝑎𝑗 , và 𝑏𝑗 là các giá trị ngơn ngữ được biểu diễn bằng các hàm thành viên

khác nhau tương ứng với 𝜇𝐴𝑖𝑗 (𝑥), 𝜇𝐵𝑖𝑗 (𝑥) , ví dụ: so sánh hai phịng học (Hình 2.4), ta có:


8
𝑑𝑖𝑠(𝐴𝑖𝑗 , 𝐵𝑖𝑗 ) = |𝜇𝐴𝑖𝑗 (𝑥) − 𝜇𝐵𝑖𝑗 (𝑦)| ; với mọi 𝑥, 𝑦 ∈ 𝑈𝑗

(2.5)

Định nghĩa độ tương tự được đề xuất trong phương trình (2.1) cho phép ta xác định mức độ của các
thuộc tính của hai đối tượng là tương tự nhau. Tham số 𝑘𝑗 trong phương trình (2.1) được sử dụng để
điều chỉnh độ tương tự bằng cách điều chỉnh sự đóng góp của khoảng cách d trong phép đo tương tự.
Kết quả là, 𝑘𝑗 có thể được tính theo khoảng cách d thơng qua ứng dụng của người dùng hoặc có thể
được ước tính.
Độ đo tương tự 𝑆𝑖𝑚(𝑜1 , 𝑜2 ) giữa hai đối tượng mờ 𝑜1 và 𝑜2 là:
𝑆𝑖𝑚(𝑜1 , 𝑜2 ) =⊕ (𝑆(𝑎1 , 𝑏1 ), 𝑆(𝑎2 , 𝑏2 ), … , 𝑆(𝑎𝑛 , 𝑏𝑛 ) )

(2.6)

trong đó ánh xạ ⊕𝑗 : [0,1]𝑛 → [0,1] là toán tử gộp, chẳng hạn như bình quân trọng số hoặc hàm tối
thiểu:
1) Trọng số trung bình các điểm tương tự của các thuộc tính
𝑛

⊕ (𝑆(𝑎1 , 𝑏1 ), 𝑆(𝑎2 , 𝑏2 ), … , 𝑆(𝑎𝑛 , 𝑏𝑛 ) ) =

𝑗
∑𝑗=1
𝛼𝑗 𝑆(𝑎𝑗 , 𝑏𝑗 )

∑𝑛𝑗=1 𝛼𝑗


; 𝛼𝑗 ∈ [0,1]

(2.7)

2) Tối thiểu các điểm tương đồng của các thuộc tính là
⊕ (𝑆(𝑎1 , 𝑏1 ), 𝑆(𝑎2 , 𝑏2 ), … , 𝑆(𝑎𝑛 , 𝑏𝑛 )) = 𝑚𝑖𝑛[𝑆(𝑎1 , 𝑏1 ), 𝑆(𝑎2 , 𝑏2 ), … , 𝑆(𝑎𝑛 , 𝑏𝑛 )]

(2.8)

Mệnh đề 2.1: Độ tương tự 𝑆𝑖𝑚(𝑜1 , 𝑜2 ) của hai đối tượng mờ 𝑜1 và 𝑜2 (như trong phương trình 2.7,
2.10) thỏa mãn các tính chất sau:
a) Tính phản xạ: 𝑆𝑖𝑚(𝑜1 , 𝑜1 ) = 1, với mọi đối tượng 𝑜1
b) Tính tương tự: Sự giống nhau giữa hai đối tượng khác nhau 𝑜1 và 𝑜2 phải nhỏ hơn mức
tương tự giữa đối tượng 𝑜1 và chính nó: 𝑆𝑖𝑚(𝑜1 , 𝑜2 ) ≤ 𝑆𝑖𝑚(𝑜1 , 𝑜1 )
c) Tính đối xứng: 𝑆𝑖𝑚(𝑜1 , 𝑜2 ) = 𝑆𝑖𝑚(𝑜2 , 𝑜1 ), với mọi hai đối tượng mờ 𝑜1 và 𝑜2
Hai trường hợp nêu trên có thể được minh họa bằng các ví dụ sau:
Ví dụ 2.1: Trường hợp I (a): Ta xem xét hai phòng. Mỗi phòng được mơ tả bởi chất lượng và giá
th phịng của như trong hình 2.1. Để biết hai phịng so sánh với nhau như thế nào, trước tiên ta sẽ
xác định độ tương tự giữa chất lượng và giá thuê của cả hai phòng. Hãy xác định miền đặc trưng cơ
bản 𝐷𝑄 = [0; 1] của mỗi phòng thuộc trong đoạn [0; 1]. Ta có thể xác định miền mờ của chất lượng
phòng bằng cách xác định các tập con mờ 𝐹𝐷𝑄 = {𝑇ℎấ𝑝, 𝑇𝑟𝑢𝑛𝑔 𝑏ì𝑛ℎ, 𝐶𝑎𝑜}, trên miền cơ bản 𝐷𝑄 .
Ở đây ta giả định chỉ có ba tập con mờ (𝑚𝑗 = 3).

Hình 2.1. Trường hợp I (a) so sánh hai phịng
Khi đó, chất lượng Phịng 1 và chất lượng của Phòng 2 được xác định như sau:
𝑄(𝑃ℎò𝑛𝑔 1) = {0.0⁄𝑇ℎấ𝑝 , 0.198⁄𝑇𝑟𝑢𝑛𝑔 𝑏ì𝑛ℎ, 0.375⁄𝐶𝑎𝑜 }
𝑄(𝑃ℎị𝑛𝑔 2) = {0.0497⁄𝑇ℎấ𝑝 , 0.667⁄𝑇𝑟𝑢𝑛𝑔 𝑏ì𝑛ℎ, 0.0⁄𝐶𝑎𝑜 }
Sử dụng hàm thành viên được trình bày trong hình 2.2. Tính tốn độ đo tương tự giữa các thuộc
tính này có thể được đo bằng:

𝑚

𝑑(𝑎𝑗 , 𝑏𝑗 ) = [

𝑗
∑𝑖=1
|𝜇𝐴𝑖𝑗 (𝑥) − 𝜇𝐴𝑖𝑗 (𝑦)|

𝑚𝑗

1⁄
2

2

]

; 𝑥, 𝑦 ∈ 𝐷𝑄

(2.9)

Cho hai thuộc tính 𝑎1 𝑣à 𝑏1 đại diện cho hai phòng 𝑄(𝑃ℎò𝑛𝑔1) và 𝑄(𝑃ℎò𝑛𝑔2), và cho 𝐴11 , 𝐴21
và 𝐴31 tương ứng với Rẻ, Trung bình và Đắt. Vậy ta có:


9
2

2 1⁄2


2

|𝜇𝐴 (𝑥) − 𝜇𝐴11 (𝑦)| + |𝜇𝐴21 (𝑥) − 𝜇𝐴21 (𝑦)| + |𝜇𝐴31 (𝑥) − 𝜇𝐴31 (𝑦)|
𝑑(𝑎1 , 𝑏1 ) = [ 11
]
3
=[

|0.0 − 0.0497|2 + |0.1979 − 0.667|2 + |0.3753 − 0.0000|2
]
3
1−0.35
;
1 (0.35)

Do đó, độ tương tự giữa 𝑎1 và 𝑏1 : 𝑆(𝑎1 , 𝑏1 ) = 1+𝑘

1⁄2

≅ 0.35

đối vớ 𝑘1 ≥ 0. Ta có thể nhận được các

phép đo tương tự khác nhau giữa các thuộc tính, bằng cách giả định cho các giá trị khác nhau của 𝑘1 ,
ví dụ, khi 𝑘1 = 1, ta nhận được: 𝑆(𝑎1 , 𝑏1 ) ≅ 0.4836 và khi 𝑘1 = 2, ta nhận được: 𝑆(𝑎1 , 𝑏1 ) ≅
0.4844. Tương tự, ta có thể đo tính tương tự giữa giá thuê của hai phòng. Cho 𝐷𝑃 = [0,600]. Miền
mờ 𝐹𝐷𝑃 = {𝑅ẻ, 𝑇𝑟𝑢𝑛𝑔 𝑏ì𝑛ℎ, Đắ𝑡}. Giá cho Phịng 1 và Phịng 2 tương ứng:
𝑃(𝑃ℎị𝑛𝑔1) = {0.2353⁄𝑅ẻ , 0.726⁄𝑇𝑟𝑢𝑛𝑔 𝑏ì𝑛ℎ , 0.0169⁄Đắ𝑡}
𝑃(𝑃ℎị𝑛𝑔2) = {0.0⁄𝑅ẻ , 0.2353⁄𝑇𝑟𝑢𝑛𝑔 𝑏ì𝑛ℎ , 0.4868⁄Đắ𝑡}


Hình 2.2.Trường hợp I (a) Đại diện mờ về chất lượng và giá cả của hai phòng (Sử dụng các hàm
thành viên khác nhau)
Cho P(Phòng 1) và P(Phòng 2) được biểu diễn bởi các thuộc tính tương ứng 𝑎2 và 𝑏2 . Ta có 𝐴12 ,
𝐴22 , và 𝐴32 tương ứng với Rẽ, Trung bình, và Đắt (Hình 2.2 cho thấy một đại diện mờ của chất
lượng và giá cả cho hai phòng). Khoảng cách 𝑑(𝑎2 , 𝑏2 ) ≅ 0.4151. Đối với 𝑘2 = 1, ta nhận được:
𝑆(𝑎2 , 𝑏2 ) ≅ 0.4133, và khi 𝑘2 = 2, ta nhận được: 𝑆(𝑎2 , 𝑏2 ) ≅ 0.3196. Do đó, Cách tính tương tự
tổng quát: 𝑆𝑖𝑚(𝑜1 , 𝑜2 ) = 𝑆𝑖𝑚(𝑃ℎò𝑛𝑔 1, 𝑃ℎò𝑛𝑔 2) = ⊕ (𝑆(𝑎1 , 𝑏1 ), 𝑆(𝑎2 , 𝑏2 )) được tính như sau:
1) Trọng số trung bình các điểm tương tự của các thuộc tính: Giả sử rằng 𝛼1 = 0.5 và 𝛼2 =
0.8 . Khi 𝑘1 = 𝑘2 = 1 ta nhận được:
𝑆𝑖𝑚(𝑜1 , 𝑜2 ) =

∑2𝑗=1 𝛼𝑗 𝑆(𝑎𝑗 , 𝑏𝑗 )
∑2𝑗=1 𝛼𝑗

=

0.5 ∗ 𝑆(𝑎1 , 𝑏1 ) + 0.8 ∗ 𝑆(𝑎2 , 𝑏2 )
≅ 0.4403
0.5 + 0.8

Và khi 𝑘1 = 𝑘2 = 1 ta có: 𝑆𝑖𝑚(𝑜1 , 𝑜2 ) ≅ 0.3445; hoặc
2) Tối thiểu các điểm tương tự của các thuộc tính: Khi 𝑘1 = 𝑘2 = 1 ta có:
𝑆𝑖𝑚(𝑜1 , 𝑜2 ) = 𝑚𝑖𝑛𝑛=2 [0.4836,0.4133] = 0.4133
Và khi 𝑘1 = 𝑘2 = 2 ta có: 𝑆𝑖𝑚(𝑜1 , 𝑜2 ) = 0.3196
Ví dụ 2.2: Trường hợp I (b): Trong trường hợp so sánh hai phòng ở được mơ tả trong Hình 2.3, ví
dụ: khi các hàm thành viên của các tập mờ là khác nhau, ta có:

Hình 2.3: Trường hợp I (b) So sánh phịng
𝑚


𝑑(𝑎𝑗 , 𝑏𝑗 ) = [

𝑗
∑𝑖=1
|𝜇𝐴𝑖𝑗 (𝑥) − 𝜇𝐵𝑖𝑗 (𝑦)|

𝑚𝑗

1⁄
2

2

]

; 𝑥, 𝑦 ∈ 𝐷

(2.10)

Điểm tương đồng 𝑆𝑖𝑚(𝑜1 , 𝑜2 ) giữa hai phịng được tính như sau:
1) Điểm tương tự trung bình của các thuộc tính giống nhau: cho 𝛼1 = 0.5 và 𝛼2 = 0.8. Sau đó,
khi 𝑘1 = 𝑘2 = 1 ta nhận được: 𝑆𝑖𝑚(𝑜1 , 𝑜2 ) ≅ 0.3902, và khi 𝑘1 = 𝑘2 = 2 ta nhận được:
𝑆𝑖𝑚(𝑜1 , 𝑜2 ) ≅ 0.3090.


10
2) Tối thiểu các điểm tương tự của các thuộc tính: khi 𝑘1 = 𝑘2 = 1 ta nhận
được:𝑆𝑖𝑚(𝑜1 , 𝑜2 ) ≅ 0.2566, và khi 𝑘1 = 𝑘2 = 2 ta nhận được:𝑆𝑖𝑚(𝑜1 , 𝑜2 ) ≅ 0.1871.

Hình 2.4: Trường hợp I (b) Đại diện mờ về chất lượng và giá cả của hai (Sử dụng các hàm thành

viên khác nhau)
Do đó, độ tương tự giữa các tập mờ được xác định bằng cách sử dụng cùng một hàm thuộc lớn hơn
độ tương tự giữa các tập mờ giống nhau được xác định bằng cách sử dụng các hàm thành viên khác
nhau. Điều này có nghĩa là việc đánh giá mức độ tương tự có liên quan đến việc xác định các hàm
thuộc và biểu diễn các giá trị ngơn ngữ.
B. So sánh một thuộc tính rõ với một thuộc tính mờ và ngược lại.
Trong phần này ta giải quyết trường hợp thứ hai: so sánh một giá trị thuộc tính rõ (số) của một đối
tượng mờ (có nghĩa là một đối tượng có một hoặc nhiều thuộc tính mờ) với một thuộc tính mờ tương
ứng của một đối tượng mờ khác. Đầu tiên, ta làm mờ giá trị rõ thành mờ hoặc ngơn ngữ [68], sau
đó so sánh tương tự như trong trường hợp I. Vì mục đích nhất quán, ta sử dụng (xem Hình 2.4 ở trên)
hàm thành viên Gaussian nhằm đảm bảo tính tổng quát của đề xuất trên. Điều này được minh họa
bằng các ví dụ sau đây.
Ví dụ 2.3: Trường hợp II: Ta xem xét hai phịng giống nhau trong Ví dụ 2.2, nhưng bây giờ giá trị
của thuộc tính Chất lượng của Phịng 1 và giá trị của thuộc tính Giá th Phịng 2 là rõ (xem Hình
2.5). Sau khi làm mờ hóa cho cả hai giá trị rõ giả định các hàm thành viên giống như trong ví dụ 2.2,
ta nhận được như sau:

Hình 2.5: Trường hợp II Các phịng được mơ tả bởi các thuộc tính rõ và mờ
𝑄(𝑃ℎị𝑛𝑔 1) = 0.8 ≡ {0.0⁄𝑇ℎấ𝑝 , 0.1979⁄𝑇𝑟𝑢𝑛𝑔 𝑏ì𝑛ℎ , 0.3753⁄𝐶𝑎𝑜}
𝑄(𝑃ℎị𝑛𝑔 2) = 420 ≡ {0.0⁄𝑅ẽ , 0.2353⁄𝑇𝑟𝑢𝑛𝑔 𝑏ì𝑛ℎ , 0.4868⁄Đắ𝑡}
Sử dụng phương pháp trên, ta sẽ nhận được kết quả tương tự như trong Ví dụ 2.2.
C. So sánh tính tương tự của hai đối tượng có cùng một lớp.
Để so sánh hai đối tượng mờ 𝑜1 𝑣à 𝑜2 và tính 𝜇(𝑜1 , 𝑜2 ), trước tiên chúng ta so sánh các thuộc tính
tương ứng của chúng. Đối với mỗi một cặp giá trị của cùng một thuộc tính (𝑔𝑖ả 𝑠ử 𝐴𝑖 (1 ≤ 𝑖 ≤ 𝑛))
ta cần tính được mức độ tương đương của chúng, biểu diễn bởi 𝜇𝐴𝑖 (𝑜1 , 𝑜2 )(0 ≤ 𝜇𝐴𝑖 (𝑜1 , 𝑜2 ) ≤ 1).
Ở đây,
𝜇𝐴𝑖 (𝑜1 , 𝑜2 ) = 𝑆𝐸(𝑜1 (𝐴𝑖 ), 𝑜2 (𝐴𝑖 ))

(2.11)


Nhận xét rằng các thuộc tính khác nhau đóng các vai trò khác nhau trong việc so sánh đối tượng và
một số có thể chiếm ưu thế và một số có thể khơng. Trọng số 𝑤𝑖 được gán cho mỗi thuộc tính của C
dựa trên tầm quan trọng của nó sao cho
0 ≤ 𝑤𝑖 ≤ 1 𝑣à ∑ 𝑤𝑖 = 1 (𝑖 = 1, 2, … , 𝑛)

(2.12)

Về mặt hình thức, mức độ tương tự của 𝑜1 𝑣à 𝑜2, được tính bởi 𝜇(𝑜1 , 𝑜2 ), được biểu diễn như sau.
𝜇(𝑜1 , 𝑜2 ) = ∑(𝜇𝐴𝑖 (𝑜1 , 𝑜2 )) × 𝑤𝑖 ) (𝑖 = 1, 2, … , 𝑛)

-

Nếu 𝜇(𝑜1 , 𝑜2 ) = 0, 𝑜1 𝑣à 𝑜2 không tham chiếu đến cùng đối tượng;
Nếu 𝜇𝐴𝑖 (𝑜1 , 𝑜2 ) = 1, 𝑜1 𝑣à 𝑜2 cùng tham chiếu đến đối tượng thực.

(2.13)


11
- Nếu 0 < 𝜇(𝑜1 , 𝑜2 ) < 1, 𝑜1 𝑣à 𝑜2 cùng tham chiếu đến đối tượng thực ở một mức độ nào đó.
D. So sánh tính tương tự của hai đối tượng thuộc các lớp khác nhau.
Kết hợp mức độ tương tự của các giá trị thuộc tính cùng với việc xem xét trọng số thuộc tính, ta có
𝜇(𝑜1 , 𝑜2 ) = ∑(𝜇𝐴𝑖 (𝑜1 , 𝑜2 ) × 𝑤𝑖 ) + ∑(𝜇𝐴𝑗 (𝑜1 , 𝑜2 ) × 𝑤𝑗 )(𝑖 = 1, 2, … , 𝑘; 𝑗 = 𝑘 + 1, 𝑘 + 1, … , 𝑚) (2.14)

2.1.2 Thuật toán xử lý truy vấn dựa vào độ đo tương tự
 Trường hợp 1: Xử lý truy vấn đối với các đối tượng có giá trị thuộc tính rõ và mờ. Trong trường
hợp này ta dựa vào cách tính tốn độ đo khoảng cách DIS và tính tốn tương tự SIM.
1. Trường hợp đơn điều kiện
Câu truy vấn cho trường hợp đơn điều kiện có dạng như sau:
SELECT ….. FROM C WHERE Aattr  fvalue THOLD fthreshold

Điều kiện Aattr  fvalue, với fvalue là giá trị mờ và Aattr là thuộc tính mờ lớp mờ C, {=,
≠, <, >}, ngưỡng 0 ≤ 𝑓𝑡ℎ𝑟𝑒𝑠ℎ𝑜𝑙𝑑 ≤ 1
Sử dụng hàm thành viên 2.6 và 2.4 chuyển fvalue về giá trị thuộc
Thuật toán 2.1: FQSIMSC (Fuzzy Query Sim Single Condition) Thực hiện truy vấn FOQL
mờ trong trường hợp đơn điều kiện.
.
Đầu vào: Lớp C cùng với các thuộc tính {A1, A2,…, An}, tập các đối tượng thuộc lớp C: {Oi, i
= 1,…,m}, tham số fthreshold và 𝛼 ∈ [0; 1], K số nguyên dương giá trị ngần định K=1.
Đầu ra: Tập đối tượng Oresult thỏa mãn với mọi t  O ta có t[Aattr]  fvalue với ngưỡng cho
trước fthreshold.
1:
2:
3
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:

{

Oresult = ;
fvalue[m] = 𝑓𝑢𝑧𝑧𝑦. gaussmf(𝑓𝑣𝑎𝑙𝑢𝑒) ;
𝛼 = 0.5;
for t  O do { // t là đối tượng được trích rút từ tập O

𝐀𝐫𝐚𝐲[m] = 𝑓𝑢𝑧𝑧𝑦. gaussmf(𝒕[𝐴𝑎𝑡𝑡𝑟]) ;
Attvalue[m]= 𝐀𝐫𝐚𝐲[m];
For i = 0 to m { // m số tập con mờ
d += | fvalue[i] - Attvalue [i] |^2 ;
}
D = (d/m)^ ½;
1−𝑑

𝑆 = 1+𝐾∗𝑑;
𝑆𝑖𝑚 =

if  là phép = then {
if 𝐒𝐢𝐦(fvalue, Attvalue) == fthreshold then

14:
15:
16:
17:
18:
19:
10:
21:

𝛼∗𝑆
;
𝛼

Oresult = Oresult  t;
}
Else {

Case  of {
≠ :if 𝐒𝐢𝐦(fvalue, Attvalue) ≠ fthreshold then
Oresult = Oresult  t;
< :if 𝐒𝐢𝐦(fvalue, Attvalue) < fthreshold then


12
Oresult = Oresult  t;

22:
23:

> :if 𝐒𝐢𝐦(fvalue, Attvalue) > fthreshold then
Oresult = Oresult  t;

24:
}
25:
26:
27:
28:

}
}
return Oresult;
}

2. Trường hợp đa điều kiện
Câu truy vấn cho trường hợp đa điều kiện có dạng như sau:
SELECT ….. FROM O WHERE Aattr1 1 fvalue1 ξ Aattr2 2 fvalue2 THOLD fthreshold.

Điều kiện Aattr1 1 fvalue1, Aattr2 2 fvalue2 với fvalue1 , fvalue2 là các giá trị mờ và Aattr1, Aattr2 là
thuộc tính mờ lớp mờ C, 1 và 2 {=, ≠, <, >}, ngưỡng 0 ≤ 𝑓𝑡ℎ𝑟𝑒𝑠ℎ𝑜𝑙𝑑, ≤ 1. ξ là phép toán
and hoặc or
Sử dụng hàm thành viên 2.6 và 2.4 chuyển fvalue1, fvalue2 về giá trị thuộc
Thuật toán 2.2: FQSIMMC (Fuzzy Query Sim Multi-Condition). Thực hiện truy vấn FOQL mờ
trong trường hợp đa điều kiện.

.
Đầu vào: Lớp C cùng với các thuộc tính {A1, A2,…, An}, tập các đối tượng thuộc lớp C: {Oi, i = 1,…,m},
tham số fthreshold và 𝛼 ∈ [0; 1], K số nguyên dương giá trị ngần định K=1.
Đầu ra: Tập đối tượng Oresult thỏa mãn với mọi t  O ta có t[Aattr1] 1 fvalue1 và t[Aattr2] 2 fvalue2 với
ngưỡng cho trước fthreshold.
1:
2:
3:
4:
5:
6:
7:
8:
9:

{
Oresult = ;
fvalue1 [m] = 𝑓𝑢𝑧𝑧𝑦. gaussmf(fvalue1 ) ;
fvalue2 [m] = 𝑓𝑢𝑧𝑧𝑦. gaussmf(fvalue2 );
𝛼 = 0.5;
for t  O do {// t là đối tượng được trích rút từ tập O
Attvalue1 [m] = 𝑓𝑢𝑧𝑧𝑦. gaussmf(𝑡[𝐴𝑎𝑡𝑡𝑟1 ] ) ;
Attvalue2 [m] = 𝑓𝑢𝑧𝑧𝑦. gaussmf(𝑡[𝐴𝑎𝑡𝑡𝑟2 ] );

For i = 0 to m {// m tập con mờ

10:

D1 +=(| fvalue1 [i] - Attvalue1 [i] |^2 );

11:
12:
13:
14:
15:

D2 +=(| fvalue2 [i] - Attvalue2 [i] |^2 );
}
D1=( D1 /m)^ ½ ;
D2=( D2 /m)^ ½ ;

16:
17:
18:
19:
20:

𝑆1 =
𝑆2 =

1−𝐷1
1+𝐾∗𝐷1
1−𝐷2


1+𝐾∗𝐷2

;

;

𝛼 ∗ 𝑆1
;
𝛼
𝛼 ∗ 𝑆2
𝑆𝑖𝑚2 =
;
𝛼
if ( 𝑆𝑖𝑚1 (fvalue1 , Attvalue1 ) 1 fthreshold) and (𝑆𝑖𝑚2 (fvalue2 , Attvalue2 ) 2 fthreshold) then {
Oresult = Oresult  t;
𝑆𝑖𝑚1 =


13
21:
22:

}
if {𝑆𝑖𝑚1 (fvalue1 , Attvalue1 ) 1 fthreshold} or {𝑆𝑖𝑚𝑗 (fvalue2 , Attvalue2 ) 2 fthreshold} then {
Oresult = Oresult  t;

23:
24:
25:
26:

27:

}
}
return Oresult ;
}

 Trường hợp 2: Xử lý truy vấn đối với các đối tượng có giá trị thuộc tính ước lượng và các đối
tượng thuộc các lớp khác nhau. Trong trường hợp này ta dựa vào phân bố khả năng và các tính
tốn mức độ tương tự ngữ nghĩa của SID và SEM. Câu truy vấn cho trường hợp 2 có dạng như
sau:
SELECT ….. FROM C1, C2 WHERE Aattr1 1 fvalue1 ξ Aattr2 2 fvalue2 THOLD w
Điều kiện Aattr1 1 fvalue1, Aattr2 2 fvalue2 với fvalue1 , fvalue2 là các giá trị mờ và Aattr1, Aattr2 là
thuộc tính mờ của lớp mờ C1 và C2, 1 và 2 {=, ≠, <, >}, w được gán cho mỗi thuộc tính của
lớp mờ C1 và C2 dựa trên tầm quan trọng của nó sao cho ngưỡng 0 ≤ w ≤ 1. ξ là phép toán and
hoặc or
Thuật toán 2.3: FQSEM (Fuzzy Query SEM) Thực hiện truy vấn FOQL mờ.
Đầu vào: Cho C1 là lớp có các thuộc tính {𝑎1 , 𝑎2 , … , 𝑎𝑘 , 𝑎𝑘+1 , … , 𝑎𝑚 } và C2 là lớp có các thuộc
,
,
tính {𝑎1 , 𝑎2 , … , 𝑎𝑘 , 𝑎𝑘+1
, … , 𝑎𝑚
, 𝑎𝑚+1 , … , 𝑎𝑛 } tập các đối tượng thuộc lớp C1 và C2: {Oi,
i=1,…,m}.
Đầu ra: Tập đối tượng Oresult thỏa mãn với mọi t  Oresult với 0 < 𝑆𝐸 ≤ 1, ngưỡng cho trước w
1:
2:
3:
4:


{
Oresult = .
𝑓𝑣𝑎𝑙𝑢𝑒1 [𝑚] = 𝑠𝑡𝑎𝑡𝑠. 𝑛𝑜𝑟𝑚(𝑓𝑣𝑎𝑙𝑢𝑒1 ) ;
𝑓𝑣𝑎𝑙𝑢𝑒2 [𝑚] = 𝑠𝑡𝑎𝑡𝑠. 𝑛𝑜𝑟𝑚(𝑓𝑣𝑎𝑙𝑢𝑒2 ) ;
for t  O do {

5:
6:

Attvalue1 [m] = 𝑠𝑡𝑎𝑡𝑠. 𝑛𝑜𝑟𝑚(𝑡[𝐴𝑎𝑡𝑡𝑟1 ] ) ;

7:
8:
9:
10:
11:

Attvalue2 [m] = 𝑠𝑡𝑎𝑡𝑠. 𝑛𝑜𝑟𝑚(𝑡[𝐴𝑎𝑡𝑡𝑟2 ] );

12:

SID2 = SID /sum(fvalue2[k]);

13:

SE(SID1, SID2)=min(SID1, SID2) ;

14:
15:


𝜇(Attvalue1 , fvalue2 ) += SE(SID1 , SID1 ) ∗ 𝑤;

For k=0 to m{
SID +=min (Attvalue2 [k], fvalue2[k]);
SID1 = SID /sum(fvalue2[k]);

}

16:

If (0 < 𝜇(Attvalue1 , fvalue1 ) ≤ 1 𝒂𝒏𝒅 0 < 𝜇(Attvalue2 , fvalue2 ) ≤ 1) then
Oresult = Oresult  t;
If (0 < 𝜇(Attvalue1 , fvalue1 ) ≤ 1 𝒐𝒓 0 < 𝜇(Attvalue2 , fvalue2 ) ≤ 1) then
Oresult = Oresult  t;

17:
18:
19:
20:
21:
22:

}
return Oresult ;
}


14

2.2 Xử lý truy vấn mờ dựa vào kỹ thuật gom cụm dữ liệu và phân khoản mờ

2.2.1 Thuật toán gom cụm cải tiến EMC sử dụng mơ hình thống kê hỗn hợp GMM

Thuật toán EMC là một kỹ thuật tối ưu hóa lặp lại được vận hành linh hoạt (Thuật tốn được cải
thiện để tăng tính linh hoạt cho phân cụm đồng thời giảm tối ưu hóa cục bộ và tăng tối ưu hóa tồn
cục).
1. Bước E: đối với các giá trị tham số cho trước, chúng ta có thể tính tốn giá trị kỳ vọng của biến
tiềm ẩn (Dựa trên các tham số đã cho của mơ hình, tính tốn xác suất cho giá trị kỳ vọng của các
biến tiềm năng và ghi nhãn cho các điểm dữ liệu vào một nhóm).
2. Bước M: Các tham số của mơ hình được cập nhật thơng qua các biến tiềm ẩn được tính tốn bằng
phương pháp khả năng ước lượng cực đại.
3. Bước C: Cập nhật các tham số của mơ hình dựa trên các biến tiềm ẩn tính theo phương pháp khả
năng ước lượng cực đại và tỷ lệ tương tự giữa các đối tượng trong một cụm và đánh giá hệ số biến
thiên của các phần tử trong cụm.
Thuật toán EMC bắt đầu bằng các tham số cho mơ hình dự đốn. Sau đó thực hiện vịng lặp 5 tiến
trình được thể hiện trong Thuật tốn 2.4.
Thuật tốn 2.4: EMC (Expectation Maximization Coefficient)
Đầu vào: Khởi tạo giá trị của hệ số biến thiên 𝐶𝑣𝑣𝑎𝑙𝑢𝑒
Đầu ra: Số cụm tối ưu
1:

Khởi tạo kỳ vọng 𝑥̅𝑗 , hiệp phương sai 𝛴𝑗 , hệ số pha trộn 𝜋𝑗 , hệ số biến thiên 𝐶𝑣 và đánh giá cho
giá trị ban đầu của log likelihood

2:

Bước E: Dựa trên các tham số của mô hình, tính tốn các xác suất gán nhãn các điểm dữ liệu vào
một nhóm
πk 𝒩(X|x̅k , Σk )
γj (X) = K
(2.15)

∑j=1 πj 𝒩 (X|x̅j , Σj )

3:

Bước M: Cập nhật các tham số của mơ hình dựa trên các nhóm gom được từ bước E
∑N
n=1 γj (Xn )Xn
̅xj =
∑N
n=1 γj (Xn )
N
∑n=1 γj (Xn )(Xn − x̅j )Xn − x̅j T
Σj =
∑N
n=1 γj (Xn )
Đánh giá log likelihood.
N
N
N
1K
(X )
π = ∑ γ(X
ln p(X|x̅, Σ, π) = ∑ ln = ∑j ln {∑
N πk j nn|x̅k , Σk )}

4:

n−1

n=1

k=1

(2.16)
(2.17)
(2.38)
(2.18)

5:

Bước C: Cập nhật thông tin về hệ số biến thiên của các cụm và đánh giá khả năng biến động các
phần tử cho từng cụm, cụ thể ta đánh giá hệ số biến thiên của cụm thứ i với Cvi có thảo mãn giá trị
biến thiên Cvvalue đã cho hay không.
∑N
n=1 γj (Xn )Xn
Cvi =
(2.19)
1 n
∑k=1 xk
n
Cvi ≤ Cvvalue
(2.20)

6:

Nếu không hội tụ và thảo mãn giá trị biến thiên Cvvalue đã cho, quay trở lại bước 2. Nếu likelihood
khơng có nhiều thay đổi thuật toán kết thúc.

2.2.2 Đánh giá thuật toán EMC bằng phương pháp phân tích sự khác biệt giữa các nhóm
Để đánh giá tính hiệu quả của thuật tốn EMC bằng phương pháp thống kế đã được đề xuất thông
qua cơng trình đã cơng bố [CT3].


2.2.3 Phân các khoảng mờ
2.2.3.1 Xác định tâm
Trong cơ sở dữ liệu hướng đối tượng mờ, miền giá trị của các thuộc tính định lượng của đối tượng
mờ mà trong đó (các thuộc tính có thể chứa giá trị rõ hoặc mờ) được chia thành hai hoặc nhiều


15
khoảng mờ. Trong các khoảng mờ, một phần tử có thể thuộc nhiều hơn một khoảng với các mức độ
khác nhau. Trong phần mục này, giả sử mỗi thuộc tính định lượng được chia thành ba khoảng mờ
bằng phương pháp tiếp cận thống kê trong đó sử dụng kỳ vọng 𝑥̅ (mean) và độ lệch chuẩn (Sd) được
minh họa như trong hình 2.6.

Hình 2.6: Các khoảng mờ
Định nghĩa 2.13. Mức độ chồng lấp giữa các đối tượng dữ liệu mờ thuộc về hai hoặc nhiều cụm
được định nghĩa như sau: 𝑂𝑣𝑒𝑟𝑙𝑎𝑝 =

∑𝐶𝑛
𝑗=1|𝐶𝑗 |
|⋃𝐶𝑛
𝑗 𝐶𝑗 |

× 100

(2.21)

Trong đó 𝐶𝑗 là cụm thứ j, với j=1, 2,..., n
2.2.3.2 Xác định các khoảng
Khoảng thứ nhất (𝟏𝒔𝒕 interval) Biên dưới (𝑑 − ) của khoảng thứ nhất là giá trị nhỏ nhất trong miền
của thuộc tính định lượng. Biên trên (𝑑+ ) được tính bằng kỳ vọng 𝑥̅ và độ lệch chuẩn (Sd) của các

giá trị của thuộc tính định lượng. Biểu thức tốn học của (𝑑− ) và (𝑑+ ) được trình bày như sau:
𝑑 − = 𝑀𝐼𝑁(𝑋1𝐶𝑗 , 𝑋2𝐶𝑗 , … . , 𝑋𝑁𝐶𝑗 )
}
𝑆𝑑
𝑑 + = 𝑥̅ −
+ 𝑥̅ × 𝑜𝑣𝑒𝑟𝑙𝑎𝑝
2

(2.22)

Trong đó 𝑋𝑁 là giá trị của cụm 𝐶𝑗 với 𝑁 = 1,2, . . , 𝑛 và 𝑗 = 1,2, . . 𝑛.
Trong khoảng thứ nhất (1𝑠𝑡 interval)hàm thành viên Z-membership được sử dụng để tính mức độ
thành viên, đó là:
𝑓(𝑥)𝒵 =
𝒔𝒕



1 1
𝑥 − 𝑑−
+ 𝑐𝑜𝑠 ( +

2 2
𝑑 − 𝑑−

(2.23)

+

Khoảng thứ hai (𝟐 interval) Biên dưới (𝑑 ) và biên trên (𝑑 ) của khoảng thứ hai được tính như

sau:
𝑆𝑑
− 𝑥̅ × 𝑜𝑣𝑒𝑟𝑙𝑎𝑝
2
}
𝑆𝑑
𝑑 + = 𝑥̅ +
+ 𝑥̅ × 𝑜𝑣𝑒𝑟𝑙𝑎𝑝
2

(2.24)

1 1
𝑥̅ − 𝑥
+ 𝑐𝑜𝑠 (
) Π 𝑑 − ≤ 𝑥 ≤ 𝑥̅
2 2
𝑥̅ − 𝑑 −
}
1 1
𝑥 − 𝑥̅
𝑓(𝑥)𝒵 = + 𝑐𝑜𝑠 ( +
) Π 𝑥̅ ≤ 𝑥 ≤ 𝑑 +
2 2
𝑑 − 𝑥̅

(2.25)

𝑆𝑑
− 𝑥̅ × 𝑜𝑣𝑒𝑟𝑙𝑎𝑝

2
}
𝑑 + = 𝑀𝐴𝑋(𝑋1𝐶𝑗 , 𝑋2𝐶𝑗 , … . , 𝑋𝑁𝐶𝑗 )

(2.26)

𝑑 − = 𝑥̅ −

Khoảng này sử dụng cả hàm thành viên S-membership và Z-membership, được biểu diễn như sau:
𝑓(𝑥)𝑆 =

Khoảng thứ ba (𝟑𝒔𝒕 interval) Biên dưới (𝑑− ) và biên trên (𝑑+ ) của khoảng thứ ba được tính như
sau:
𝑑 − = 𝑥̅ −

Khoảng này sử dụng hàm thành viên S-Membership có dạng như sau.
𝑓(𝑥)𝑆 =

1 1
𝑑+ − 𝑥
+ 𝑐𝑜𝑠 ( +

2 2
𝑑 − 𝑑−

(2.27)

Ví dụ 2.4: Dựa vào kết quả phân cụm của thuật tốn EMC cho thuộc tính “Điểm mơn tốn” , ta phân
loại giá trị định lượng của thuộc tính này thành ba khoảng, như trong Bảng 2.1, trong đó giá trị
khoảng được xác định từ 22 đến 99.



16
Bảng 2.1: Xác định khoảng mờ của thuộc tính định lượng "Điểm toán"
Khoản mờ
Khoản
Giá trị tối thiểu Giá trị tối đa
Điểm_tốn.Thấp
22 đến 48 0.0
0.44
Điểm_tốn.Trung bình 53 đến 64 0.44
0.55
Điểm_tốn.Cao
67 đến 99 0.55
1.0

2.2.4 Thuật toán xử lý truy vấn trên các cụm
Mơ tả thuật tốn xử lý truy vấn trên các khoảng mờ

Thuật toán 2.5: FQINTERVAL (Fuzzy Query Interval). Thực hiện truy vấn FOQL mờ dựa vào các
khoản mờ.
Đầu vào: Cho C là lớp có các thuộc tính {𝑎1 , 𝑎2 , … , 𝑎𝑘 , 𝑎𝑘+1 , … , 𝑎𝑚 } tập các đối tượng thuộc lớp C: {Oi, i =
1,…,m}. Câu truy vấn dạng SELECT … FROM C WHERE Aattr = fvalue THOLD 1.0
Đầu ra: Tập đối tượng Ointerval thỏa mãn với 𝐴𝑖 𝜃(𝐴𝑖) ∈ fvalue
1:
{
2:
Thực hiện thuật toán phân cụm EMC
3:
Thực hiện thuật toán phân vùng mờ

4:
interval[k] chứa các khoảng mờ sau khi thực hiện thuật toán EMC và phân khoảng mờ, k là
số khoản mờ.
5:
𝑶𝒊𝒏𝒕𝒆𝒓𝒗𝒂𝒍 = ∅; // chứa tập các đối tượng thuộc khoản nào đó
6:
For i = 0 to k {
7:
If (interval[i].value == fvalue) then
8:
𝑂𝑖𝑛𝑡𝑒𝑟𝑣𝑎𝑙 = interval[i] ;
9:
}
10:
Return 𝑂𝑖𝑛𝑡𝑒𝑟𝑣𝑎𝑙 ;
11:
}

2.3 Xử lý truy vấn dựa vào đại số gia tử
Trong phần mục này chúng tôi đề xuất phương pháp xử lý truy vấn mờ dựa trên hướng tiếp cận
ĐSGT. Bằng các phương pháp xử lý khác nhau như xác định giá trị chân lý đơn và đa điều kiện, dựa
trên cơ sở đó xây dựng bộ truy vấn cho các trường hợp xử lý đơn và đa điều kiện, các kết quả kiểm
chứng thông qua lược đồ cơ sở dữ liệu hướng đối tượng mờ [CT1].

2.4 Đánh giá thực nghiệm

Hình 2.7: Thời gian thực thi trong thuật toán


17

Thời gian thực hiện FQINTERVAL trong RoomBooking ít hơn so với FQSIMMC và FQSEM.
Thời gian thực thi của bộ dữ liệu RoomBooking, ProjectManagement và
CourseScoresManagement cho FQINTERVAL lần lượt là 3503, 14012 và 14712 (xem trong Bảng
2.2). So với FQSIMMC và FQSEM cho RoomBooking, ProjectManagement và
ManageCourseScores lần lượt là 2045: 2024, 6135: 6072 và 6544: 6555 (xem trong Hình 2.7).
Bảng 2.2: Thời gian thực thi của thuật toán
Fuzzy Dataset
RoomBooking
ProjectManagement
CourseScoresManagement

Thời gian thực thi của thuật tốn
FQSIMMC FQSEM FQINTERVAL
4045
4001
3503
16810
16004
14012
17393
17204
14712

Hình 2.8: Đánh giá việc sử dụng bộ nhớ cho các bộ dữ liệu khác nhau
Theo Bảng 2.3, mức sử dụng bộ nhớ của hai thuật toán FQSIMMC và FQSEM lớn hơn so với thuật
toán FQINTERVAL. Việc sử dụng bộ nhớ của các thuật toán này cho RoomBooking,
ProjectManagement và CourseScoresManagement lần lượt là 896, 2688 và 2867 (xem Hình 2.8).
Hai thuật tốn FQSIMMC và FQSEM sử dụng bộ nhớ lớn hơn vì cả hai cùng nập tất cả dữ liệu lên
vùng nhớ chính để xử lý. Tuy nhiên, thuật toán FQINTERVAL sử dụng bộ nhớ ít hơn do việc xử lý
truy vấn chỉ thực hiện trực tiếp trên vùng mờ đã được xác định.

Bảng 2.3: Sử dụng bộ nhớ trong các thuật toán
Fuzzy Dataset
RoomBooking
ProjectManagement
CourseScoresManagement

Sử dụng bộ nhớ trong các thuật toán
FQSIMMC FQSEM FQINTERVAL
2045
2024
896
6135
6072
2688
6544
6555
2867

2.5 Kết luận chương 2
So sánh và gom cụm các đối tượng trong cơ sở dữ liệu hướng đối tượng mờ đã được đề xuất trong
phần mục này, các kết quả đề xuất là cơ sở cho một chuỗi của các giai đoạn tiền xử lý truy vấn trong
mơ hình cơ sở dữ liệu hướng đối tượng mờ. Các đề xuất này là:
- Thứ nhất, đề xuất các phương pháp so sánh tính tương tự giữa các đối tượng mờ dựa vào các kỹ
thuật của độ đo ngữ nghĩa của dữ liệu mờ và khoảng cách Euclidean.
- Thứ hai, đề xuất thuật toán gom cụm dữ liệu EMC được cải tiến từ thuật toán EM và thuật toán xây
dựng các khoảng mờ dựa vào kết quả của thuật toán phân cụm EMC và phương pháp đánh giá thuật
toán EMC.
- Thứ ba, đề xuất các thuật toán xử lý truy vấn mới dựa vào độ đo tương tự và gom cụm
Các đề xuất trong phần mục này sẽ là nền tảng cơ sở lý thuyết và ứng dụng cho quá trình xử lý, tối
ưu hóa truy vấn sẽ được trình bày trong chương 3.



18

Chương 3 XỬ LÝ VÀ TỐI ƯU HÓA TRUY VẤN TRONG CƠ SỞ DỮ LIỆU HƯỚNG
ĐỐI TƯỢNG MỜ
Ngôn ngữ truy vấn là một thành phần quan trọng của bất kỳ hệ thống cơ sở dữ liệu nào (có sở dữ liệu
quan hệ, hướng đối tượng rõ hay mờ). Trong các mơ hình dữ liệu hướng đối tượng mờ, mặc dù đã
các đề xuất gần đây về phương pháp thao tác xử lý truy vấn dữ liệu cho mơ hìn này, nhưng vẫn cần
có ngơn ngữ truy vấn để đối phó hiệu quả với các tình huống phức tạp hơn trong việc truy lục và xử
lý dữ liệu phức tạp và không chắc chắn, nơi dữ liệu phức tạp được lưu trữ dưới dạng các đối tượng
kèm theo đó là các kỹ thuật xử lý mờ được áp dụng để đối phó với sự thiếu chính xác và khơng chắc
chắn. Do đó, để đảm bảo cho mơ hình CSDLHĐT mờ được hoàn thiện hơn, nội dung chương này đề
xuất hướng tiếp cận mới như: giới thiệu các phép toán đại số kết hợp mờ mới [CT2], trình bày về
phương pháp xử lý truy vấn mờ, những phương pháp xử lý này là các bước tiền xử lý cho quá trình
thực hiện tối ưu hóa của hệ thống nhằm tăng tính hiệu quả cho quá trình thực hiện thao tác trên dữ
liệu mờ [CT4], trình bày phương pháp tối ưu hóa truy vấn dựa vào các phép biến đổi tương đương,
các phép biến đổi này giúp cho giải thuật Heuristic giảm thời gian xử lý trên cây đại số đối tượng mờ
[CT5].

3.1 Các phép toán đại số trong cơ sở dữ liệu hướng đối tượng mờ
3.1.1 Đại số kết hợp mờ
Đại số kết hợp mờ được nghiên cứu để tìm kiếm cơ sở dữ liệu theo định hướng đối tượng mờ, dựa
trên sự phân bố khả năng và độ đo ngữ nghĩa của dữ liệu mờ và độ đo tương tự của hai đối tượng.
Một cách tổng quát hơn để xác định giá trị chân lý của các mơ hình kết hợp mờ được đề xuất với ví
dụ minh họa trong [13], [41], [98].

3.1.2 Mơ hình đại số kết hợp các đối tượng mờ
Đại số kết hợp mờ cho mơ hình dữ liệu hướng đối tượng mờ được đề xuất trong [CT4], [CT5]
và được ký hiệu là đại số FA (Fuzzy Association). Đại số FA làm đại số truy vấn cho mô hình dữ

liệu hướng đối tượng mờ mới (F-Model) được sử dụng để biểu diễn đồng nhất các đối tượng mờ và
các liên kết mờ bằng các mẫu liên kết mờ. Các toán tử được định nghĩa trong đại số FA thực hiện
các phép toán và kết quả trả về các mẫu liên kết mờ chứa các giá trị chân lý, trong đó các giá trị chân
lý có nghĩa là mức độ phù hợp của các mẫu như câu trả lời cho các truy vấn [CT2]. Đại số kết hợp
mờ được nghiên cứu để truy vấn cơ sở dữ liệu hướng đối tượng mờ, dựa trên phân phối khả năng và
phép đo ngữ nghĩa của dữ liệu mờ và mức độ tương đương của hai đối tượng [99].

3.1.3 Các phép toán đại số kết hợp mờ
Trong phép tốn hai ngơi, một lớp mới có thể được tạo bởi sự kết hợp của hai lớp đang tồn tại, để
tạo một lớp mới. Nó phụ thuộc vào mối quan hệ kết hợp giữa hai lớp và cũng như sự kết hợp tập
thuộc tính của các lớp. Có sáu loại phép tốn kết hợp mờ hai ngôi được định nghĩa như: phép hợp
̃ ), phép giao mờ fuzzy intersection (∩
̃ ), phép nối mờ fuzzy join (⋈
̃ ),phép tích đề
mờ fuzzy union (∪
̃
các mờ fuzzy cross product (×), phép hiệu mờ fuzzy difference (≃) và phép chia mờ fuzzy division
̃ 1 và 𝐹𝐶
̃ 2 và tập thuộc tính tương ứng của hai lớp này là 𝐴𝑡𝑡𝑟(𝐹𝐶
̃ 1 ) và

̃ ). Cho trước hai lớp mờ 𝐹𝐶
̃ 2 ). Giả sử một lớp mới 𝐹𝐶
̃ được tạo ra bởi sự kết hợp của hai lớp 𝐹𝐶
̃ 1 , 𝐹𝐶
̃ 2 . Khi đó:
𝐴𝑡𝑡𝑟(𝐹𝐶
̃ = 𝐹𝐶
̃1 ×
̃ 2 , 𝑛ế𝑢 𝐴𝑡𝑡𝑟 ′ (𝐹𝐶

̃ 1 ) ∩ 𝐴𝑡𝑡𝑟 ′ (𝐹𝐶
̃2 ) = ∅
̃ ): 𝐹𝐶
̃ 𝐹𝐶
1. Phép tích đề các mờ (×


̃ = 𝐹𝐶
̃1 ⋈
̃ 2 , 𝑛ế𝑢 𝐴𝑡𝑡𝑟 (𝐹𝐶
̃ 1 ) ∩ 𝐴𝑡𝑡𝑟 (𝐹𝐶
̃2 ) ≠
̃ ) :𝐹𝐶
̃ 𝐹𝐶
2. Phép nối mờ (⋈
′ ̃
′ ̃
∅ 𝑣à 𝐴𝑡𝑡𝑟 (𝐹𝐶1 ) ≠ 𝐴𝑡𝑡𝑟 (𝐹𝐶2 )
̃ = 𝐹𝐶
̃1 ∪
̃ 2 , 𝑛ế𝑢 𝐴𝑡𝑡𝑟 ′ (𝐹𝐶
̃ 1 ) = 𝐴𝑡𝑡𝑟 ′ (𝐹𝐶
̃2 )
̃ ) : 𝐹𝐶
̃ 𝐹𝐶
3. Phép hợp mờ (∪
̃ = 𝐹𝐶
̃1 ∩
̃ 2 , 𝑛ế𝑢 𝐴𝑡𝑡𝑟 ′ (𝐹𝐶
̃ 1 ) = 𝐴𝑡𝑡𝑟 ′ (𝐹𝐶

̃2 )
̃ ) : 𝐹𝐶
̃ 𝐹𝐶
4. Phép giao mờ (∩
̃ = 𝐹𝐶
̃ 1 ≃ 𝐹𝐶
̃ 2 , 𝑛ế𝑢 𝐴𝑡𝑡𝑟 ′ (𝐹𝐶
̃ 1 ) = 𝐴𝑡𝑡𝑟 ′ (𝐹𝐶
̃2 )
5. Phép trừ mờ (≃) : 𝐹𝐶


19
̃ = 𝐹𝐶
̃1 ÷
̃ 2 , 𝑛ế𝑢 𝐴𝑡𝑡𝑟 ′ (𝐹𝐶
̃ 1 ) = 𝐴𝑡𝑡𝑟 ′ (𝐹𝐶
̃2 )
̃ ) : 𝐹𝐶
̃ 𝐹𝐶
6. Phép chia mờ (÷
′ ̃
′ ̃
̃ 1 ) và 𝐴𝑡𝑡𝑟(𝐹𝐶
̃ 2 ) thơng qua việc xóa độ
Trong đó, 𝐴𝑡𝑡𝑟 (𝐹𝐶1 ) và 𝐴𝑡𝑡𝑟 (𝐹𝐶2 ) có được từ 𝐴𝑡𝑡𝑟(𝐹𝐶
̃ 1 ) và 𝐴𝑡𝑡𝑟(𝐹𝐶
̃ 2 ) tương ứng. 𝜇𝐹𝐶
thuộc các thuộc tính từ 𝐴𝑡𝑡𝑟(𝐹𝐶
̃ được sử dụng để biểu diễn độ thuộc

̃ . Các phép tốn mở rộng
thuộc tính của 𝐹𝐶
̃)
3.1.3.1 Phép chiếu mờ (𝜫
̃ 1 trên S được xác định như sau:
Phép chiếu của 𝐹𝐶


̃ =Π
̃ 1 ) = {𝜇𝐹𝐶
̃𝑆 (𝐹𝐶
𝐹𝐶
̃ (𝑜)|(∀𝜇𝐹𝐶
̃ (𝑜 ) ∧ 𝜇𝐹𝐶
̃ (𝑜)[𝑆] = 𝜇𝐹𝐶
̃ (𝑜 )[𝑆] ∧ 𝜇𝐹𝐶
̃ (𝑜) = 𝑚𝑒𝑟𝑔𝑒∪ (𝜇𝐹𝐶
̃ (𝑜)[𝑆]))}

3.1.3.2 Phép chọn mờ
̃ trên tập con thuộc tính S là một lớp 𝐹𝐶
̃ ′ mới, được cấu thành với các thuộc tính
Phép chọn mờ 𝐹𝐶
̃ ′ được tạo bởi:
của S cũng như thuộc tính có mức độ thuộc. Các đối tượng của 𝐹𝐶
̃ ′ = 𝜎̃𝑠𝑢𝑏 (𝐹𝐶
̃ ) = {𝜇𝐹𝐶
̃ ), 𝜑(𝜇𝐹𝐶
𝐹𝐶
̃ (𝑜)|𝜇𝐹𝐶

̃ (𝑜) ∈ (𝐹𝐶
̃ (𝑜))}
Trong đó, phép tính 𝜑(𝜇𝐹𝐶
̃ (𝑜)) dùng để loại bỏ các đối tượng trong tập hợp 𝜇𝐹𝐶
̃ (𝑜).

3.2 Ngôn ngữ truy vấn mờ FOQL
3.2.1 Truy vấn mờ FOQL
Một truy vấn là linh hoạt nếu các cơ sở dữ liệu chứa thơng tin khơng chính xác và khơng chắc chắn,
điều kiện truy vấn là khơng chính xác và không chắc chắn. Đối với các cơ sở dữ liệu hướng đối tượng
mờ, nó đã được thể hiện trên các đối tượng thuộc về một lớp được đưa ra với mức độ thành viên [0;
1]. Ngoài ra, một đối tượng đáp ứng điều kiện truy vấn nhất định cũng có mức độ thành viên [0; 1]
vì thơng tin mờ xảy ra trong điều kiện truy vấn và / hoặc đối tượng. Vì vậy, việc xử lý truy vấn dựa
trên đề xuất mơ hình cơ sở dữ liệu hướng đối tượng mờ đề cập đến như là phương pháp mà các đối
tượng đáp ứng một ngưỡng nhất định và điều kiện được quy định dưới ngưỡng cho đồng thời được
lựa chọn từ các lớp.

3.2.2 Phương pháp xử lý truy vấn mờ
Phương pháp xử lý một truy vấn đối tượng mờ trong cơ sở dữ liệu HĐT mờ tương tự như trong cơ
sở dữ liệu hướng đối tượng, nhưng chúng được định nghĩa lại cho phù hợp hơn như đã được thảo
luận ở các phần trên. Hình 3.1 đề xuất phương pháp xử lý truy vấn đối tượng mờ như sau:

Hình 3.1: Phương pháp xử lý truy vấn hướng đối tượng mờ
3.2.2.1 Các bước của phương pháp
1. Các truy vấn được thể hiện bằng ngôn ngữ khai báo tựa như ngơn ngữ truy vấn (SQL92)
khơng địi hỏi người dùng phải có kiến thức về việc triển khai đối tượng, đường dẫn truy cập
hoặc chiến lược xử lý.
2. Biểu thức tính tốn được tối giản ở dạng chuẩn hóa bằng cách loại bỏ các biến vị ngữ trùng
lặp, áp dụng định danh và viết lại. Biểu thức chuẩn hóa sau đó được chuyển đổi thành biểu
thức đại số đối tượng mờ tương đương.

3. Dạng truy vấn này là một biểu thức lồng nhau có thể được xem như một cây có các nút là
các toán tử đại số và các lá của nó đại diện cho các lớp trong cơ sở dữ liệu.
4. Biểu thức đại số được kiểm tra tiếp theo về tính nhất quán của kiểu để đảm bảo rằng các vị
từ và phương thức không được áp dụng cho các đối tượng không hỗ trợ các chức năng được
yêu cầu. Điều này không đơn giản như kiểm tra kiểu trong các ngơn ngữ lập trình chung vì
các kết quả trung gian, là tập hợp các đối tượng, có thể bao gồm các kiểu không đồng nhất.


20
5. Bước tiếp theo trong xử lý truy vấn là áp dụng các quy tắc viết lại bảo toàn tương đương cho
biểu thức đại số với nhất quán kiểu.
6. Cuối cùng, một kế hoạch thực hiện có tính đến việc triển khai đối tượng được tạo từ biểu
thức đại số được tối ưu hóa. Việc tách bước tối ưu hóa đại số khỏi bước tạo kế hoạch thực
hiện tuân theo sự phân biệt được thực hiện giữa truy vấn viết lại và tối ưu hóa kế hoạch.
3.2.2.2 Quy trình xử lý truy vấn mờ
3.2.2.3 Cây truy vấn và đồ thị truy vấn
Hầu hết các truy vấn được trình lên FOODMS là dạng ngôn ngữ truy vấn bậc cao FOQL. Trong giai
đoạn phân tích cú pháp và dịch chuyển, hình thức câu truy vấn của người dùng định nghĩa được
chuyển đổi sang dạng mẫu có cú pháp của FOODMS. Các mẫu này là một biểu thức đại số truy vấn
được biểu diễn dưới dạng đồ thị truy vấn hay cây đại số.
Ví dụ 3.1: Hình 3.2 biểu diễn cấu trúc cây kế thừa:

Hình 3.2: Đồ thị lược đồ phân cấp lớp mờ
Cấu trúc lớp mờ và quan hệ kê thừa:
CLASS DUAN WITH DEGREE OF 1.0
INHERITS DUANQUANTRONG WITH DEGREE OF 1.0
INHERITS DUANTHEODOI WITH DEGREE OF 1.0
ATTRIBUTES ID:
TYPE OF string WITH DEGREE OF 1.0 Tenduan:
TYPE OF string WITH DEGREE OF 1.0 Ngansach:

TYPE OF character WITH DEGREE OF 1.0 Ngaygiao:
FUZZY DOMAIN {Ngay, Thang, Nam}:
TYPE OF string WITH DEGREE OF 1.0 Mucdocuaduan:
FUZZY DOMAIN {Cao, Trung binh, Thap}:
TYPE OF string WITH DEGREE OF 1.0 Hoten:
TYPE OF string WITH DEGREE OF 1.0 Tuoi:
FUZZY DOMAIN {rất trẻ, trẻ, già, trung niên, rất già}:
TYPE OF integer WITH DEGREE OF 1.0 Gioitinh:
FUZZY DOMAIN {Nam, Nu}:
TYPE OF integer WITH DEGREE OF 1.0
Membership Attribute name
WEIGHT w (ID) = 0.1w (Hoten) = 0.1w
(tuoi) = 0.9w (Sex) = 0.1w (Ngaygiao) = 0.6
METHODS
END

(𝜎Tuoi=’trẻ’ (𝐷𝑈𝐴𝑁))
(
)
𝜋D.foid,D.Tenduan,T.Hoten,T.Capdo,T.Ngaygiao ( ⋈D.Foid=Q.Foid (DUANQUANTRONG ) )
⋈Q.Foid=T.Foid (DUANTHEODOI )


21
Từ biểu thức đại số đối tượng mờ mới ta có câu truy vấn FOQL tương ứng như sau:
FQ2: SELECT D.foid, D.Tenduan, T.Hoten, T. Capdo, T.Ngaygiao
FROM DUAN AS D, DUANQUANTRONG AS Q, DUANTHEODOI AS T WITH 0.5
WHERE D.Foid=Q.Foid AND Q.Foid=T.Foid AND D.Tuoi=’trẻ’ WITH 0.8

3.3 Tối ưu hóa truy vấn mờ

Với một câu truy vấn, sẽ tồn tại nhiều phương án mà hệ thống CSDL HĐT mờ cho phép xử lý và
đưa ra kết quả cuối cùng tương đương nhau, việc tối ưu hóa câu truy vấn sẽ cho chúng ta lựa chọn
phương án nào có tổng thời gian thực hiện truy vấn hiệu quả hơn, tức là chọn phương án có chi phí
ước lượng nhỏ nhất [52], [53], [54].

3.3.1 Các phép biến đổi tương đương
Ký hiệu 𝜇𝐹𝐶
̃ (𝑜), 𝜇𝐹𝐶
̃ 1 (𝑜), 𝜇𝐹𝐶
̃ 2 (𝑜), 𝜇𝐹𝐶
̃ 3 (𝑜) là các tập đối tượng mờ; e, f, g, h là các biểu thức đại
số, phép toán 𝑜𝑝 ∈ {𝑢𝑛𝑖𝑜𝑛, 𝑑𝑖𝑓𝑓}. Những luật này chỉ áp dụng trên các phép toán đối tượng mờ,
phép toán bộ, phép toán tập hợp và các phép toán đa tập (bag). Về ký hiệu, chúng ta chỉ sử dụng các
ký hiệu phép tốn một cách hình thức [98], các phép tốn này có thể được cài đặt với một số thay
đổi trong các mơ hình khác nhau.


𝑅1 : Hoán vị phép chọn: 𝜎𝜆𝑡.𝑔 (𝜎𝜆𝑠.𝑓 (𝜇𝐹𝐶
̃ (𝑜))) = 𝜎𝜆𝑠.𝑓 (𝜎𝜆𝑠.𝑔 (𝜇𝐹𝐶
̃ (𝑜)))



𝑅2 : Tổ hợp các phép chọn: 𝜎𝜆𝑠.(𝑓∧𝑔 ∧…ℎ) (𝜇𝐹𝐶
̃ (𝑜)) = 𝜎𝜆𝑠.𝑓 (𝜎𝜆𝑡.𝑔 (… (𝜎𝜆𝑢.ℎ (𝜇𝐹𝐶
̃ (𝑜))) … ))



𝑅3 : Thu gọn dãy các phép chiếu:

Π(𝑎1 ,… 𝑎𝑛 ) (Π(𝑏1 … 𝑏𝑛 ) (𝜇𝐹𝐶
̃ (𝑜))) = Π(𝑎1 … 𝑎𝑛 ) (𝜇𝐹𝐶
̃ (𝑜)) |{𝑎1 , … , 𝑎𝑛 } ⊂ {𝑏1 , … , 𝑏𝑛 }



𝑅4 : Hoán vị phép chọn và phép chiếu:
𝜎𝜆𝑠.𝑒 (Π(𝑎1 ,…,𝑎𝑛 ) (𝜇𝐹𝐶
̃ (𝑜))) = Π(𝑎1 ,…,𝑎𝑛 ) (𝜎𝜆𝑠.𝑒 (𝜇𝐹𝐶
̃ (𝑜)))



𝑅5 :Hoán vị một phép chiếu với phép hợp, hiệu trên tập/đa tập
Π(𝑎1 ,…,𝑎𝑛 ) (𝜇𝐹𝐶
̃ 1 (𝑜)𝑜𝑝 𝜇𝐹𝐶2
̃ (𝑜)) = Π(𝑎1 ,…,𝑎𝑛 ) 𝜇𝐹𝐶1
̃ (𝑜) 𝑜𝑝 Π(𝑎1 ,…,𝑎𝑛 ) 𝜇𝐹𝐶2
̃ (𝑜)



𝑅6 : Phân phối phép chọn với phép hợp và phép hiệu trên tập/đa tập
𝜎𝜆𝑠.𝑓 (𝜇𝐹𝐶
̃ 1 (𝑜)𝑜𝑝 𝜇𝐹𝐶2
̃ (𝑜)) = 𝜎𝜆𝑠.𝑓 (𝜇𝐹𝐶
̃ 1 (𝑜) ) 𝑜𝑝 𝜇𝐹𝐶
̃ 2 (𝑜), 𝑖𝑓 𝑓 𝑖𝑠 𝑟𝑒𝑙𝑎𝑡𝑒𝑑 𝑡𝑜 𝜇𝐹𝐶
̃ 1 (𝑜)
nếu f chỉ liên quan với 𝜇𝐹𝐶

̃ 1 (𝑜). Tổng quát:
𝜎𝜆𝑠.(𝑓∧𝑔∧ℎ (𝜇𝐹𝐶
̃ 1 (𝑜)𝑜𝑝 𝜇𝐹𝐶2
̃ (𝑜)) = 𝜎𝜆𝑢.ℎ (𝜎𝜆𝑠.𝑓 (𝜇𝐹𝐶
̃ 1 (𝑜)) 𝑜𝑝 𝜎𝜆𝑡.𝑔 (𝜇𝐹𝐶
̃ 2 (𝑜)))
nếu f liên quan 𝜇𝐹𝐶
̃ 1 (𝑜), g liên quan 𝜇𝐹𝐶
̃ 2 (𝑜) và h liên quan đến cả 𝜇𝐹𝐶
̃ 1 (𝑜) và 𝜇𝐹𝐶
̃ 2 (𝑜)
 𝑅7 : Hoán vị giữa phép Apply và phép chọn: nếu điều kiện chọn chỉ chứa các thuộc tính do
phép tốn apply trả về thì: 𝑎𝑝𝑝𝑙𝑦𝑠𝜆𝜇𝑠.𝑒 (𝜎𝜆𝑡.𝑓 (𝜇𝐹𝐶
̃ (𝑜))) = 𝜎𝜆𝑡.𝑓 (𝑎𝑝𝑝𝑙𝑦𝑠𝜆𝜇𝑠.𝑒 (𝜇𝐹𝐶
̃ (𝑜)))


𝑅8 : Hoán vị giữa phép làm phẳng (flat) và phép apply trên tập và đa tập: giả sử 𝜇𝐹𝐶
̃ (𝑜) là
̃
thể hiện của 1 lớp và X là một tập thuộc tính phức của lớp 𝐹𝐶 :

𝑓𝑙𝑎𝑡𝑠 𝑎𝑝𝑝𝑙𝑦𝑠
𝜆𝑠.(𝑎𝑝𝑝𝑙𝑦𝑠𝜆𝑡.𝑒 (Π(𝑋) (Π𝑉 (𝜇𝐹𝐶
̃ (𝑜)))))

(

(𝜇𝐹𝐶
̃ (𝑜))

)

= 𝑎𝑝𝑝𝑙𝑦𝑠𝜆𝑡.𝑒 (𝑓𝑙𝑎𝑡𝑠 (𝑎𝑝𝑝𝑙𝑦𝑠𝜆𝑠.Π(𝑋) (Π𝑉(𝜇𝐹𝐶
̃ (𝑜))) (𝜇𝐹𝐶
̃ (𝑜))))
Biểu thức ở vế trái, có biểu thức e tác động trước tập các tập (thu được bởi Π(𝑋) ) sau đó làm
phẳng thành một tập; biểu thức ở vế phải có phép tốn làm phẳng được ta cs động trước (kết
quả thu được là một tập), sau đó thực hiện phép toán apply.


22


𝑅9 : Tính kết hợp của phép hợp:

𝜇𝐹𝐶
̃ 2 (𝑜)
)
𝑢𝑛𝑖𝑜𝑛 𝜇𝐹𝐶
̃ 3 (𝑜)
̃ 2 là một lớp con của 𝐹𝐶
̃1 ,
 𝑅10 : Các luật kế thừa đối với phép chọn và phép apply: nếu 𝐹𝐶
thì thể hiện của 𝜇𝐹𝐶
̃ 2 (𝑜) là một tập con của thể 𝜇𝐹𝐶
̃ 1 (𝑜):
𝜎𝜆𝑠.𝑓 (𝜇𝐹𝐶
̃ 1 (𝑜)) 𝑢𝑛𝑖𝑜𝑛 𝜎𝜆𝑠.𝑓 (𝜇𝐹𝐶
̃ 2 (𝑜))
( 𝜇𝐹𝐶

̃ 1 (𝑜) 𝑢𝑛𝑖𝑜𝑛 𝜇𝐹𝐶
̃ 2 (𝑜)) 𝑢𝑛𝑖𝑜𝑛 𝜇𝐹𝐶
̃ 3 (𝑜) 𝜇𝐹𝐶
̃ 1 (𝑜) 𝑢𝑛𝑖𝑜𝑛 (

= 𝜎𝜆𝑠.𝑓 (𝜇𝐹𝐶
̃ 1 (𝑜))𝑎𝑝𝑝𝑙𝑦𝑠𝜆𝑠.𝑒 (𝜇𝐹𝐶
̃ 1 (𝑜))𝑢𝑛𝑖𝑜𝑛 𝑎𝑝𝑝𝑙𝑦𝑠𝜆𝑠.𝑒 (𝜇𝐹𝐶
̃ 2 (𝑜))
= 𝑎𝑝𝑝𝑙𝑦𝑠𝜆𝑠.𝑒 (𝜇𝐹𝐶
̃ 1 (𝑜))
3.3.1.1 Tḥt tốn tối ưu hóa truy vấn mờ
Các bước của thuật tốn như sau:
Mơ tả phương pháp: HEURISTIC
Đầu vào: Khởi tạo cây phân tích cú pháp từ biểu thức đại số đối tượng mờ
Đầu ra: Kế hoạch đánh giá tốt nhất
1: Áp dụng luật (𝑅1 ), (𝑅2 ) biến đổi dãy các phép chọn tương đương: tách phép chọn thành các
phép chọn con
2: Sử dụng luật kế thừa đối với các phép chiếu (𝑅3 ), phép chọn và phép Apply (𝑅10 ) tổ hợp dãy
các phép chiếu, chọn thành một phép chiếu và một phép chọn.
3: Đối với mỗi phép chọn, sử dụng các luật (𝑅4 ), (𝑅6 ), (𝑅7 ), (𝑅10 ), "đẩy" các phép chọn xuống
các lớp thành phần hoặc "qua" các nút kết nối và phép tạo nhóm.
4: Đối với mỗi phép chiếu (đối tượng, tập, bộ), sử dụng luật (𝑅3 ), (𝑅4 ), (𝑅5 ) nhằm đẩy các phép
chiếu đó xuống càng sâu càng tốt. Nếu tập thuộc tính được chiếu bao gồm tất cả các thuộc
tính của biểu thức thì chúng ta loại bỏ phép chiếu đó (vì phép chiếu đó là vơ ích).
5: Sử dụng các luật (𝑅8 ), (𝑅9 ), (𝑅10 ) trên các lớp đối tượng mờ, để loại bỏ các phần tử trùng lặp
trong các lớp đối tượng mờ đó;di chuyển phép làm phẳng (flat), phép loại bỏ trùng lặp trong
các đa tập (fuzzybagtoset) lên trước các phép tốn nhóm hoặc kết nối.
6: Xác định được các cây con đại diện cho nhóm phép tốn có thể thực thi bởi một thuật tốn
duy nhất.

Ví dụ 3.2: Về chuyển đổi một truy vấn. Ta xét truy vấn FOQL3: Tìm họ của những nhân viên hiện
đang quản lý dự có cấp độ là “Cao” và ngày giao “mùa thu”. Truy vấn này có thể được chỉ định trong
FOQL như sau:
FOQL3: SELECT Hoten
FROM DUAN, DUANQUANTRONG, DUANTHEODOI
WHERE DUAN.Capdo = ‘Cao’ AND DUAN.Foid =DUANQUANTRONG.Foid AND
DUANQUANTRONG.Foid = DUANTHEODOI.Foid AND NGAYGIAO = ’’Mua thu”;

Cây truy vấn ban đầu được thể hiện trong hình 3.3(a). Việc thực thi trực tiếp cây này trước tiên sẽ
tạo một tệp rất lớn chứa tích đề cát của tồn bộ tệp DUAN, DUANQUANTRONG và
DUANTHEODOI. Đó là lý do tại sao cây truy vấn ban đầu
không bao giờ được thực thi, nhưng được chuyển đổi thành một cây tương đương khác có hiệu quả
hơn để thực thi như trong hình 3.3(e).
Các bước chuyển đổi cây truy vấn trong q trình tối ưu hóa bằng phương pháp heuristic.
a) Thực thi kế hoạch đơn giản: Trình xử lý truy vấn tạo ra một biểu thức đại số quan hệ tương
đương cho truy vấn đầu vào và chuyển nó tới trình tối ưu hóa truy vấn.
b) Loại bỏ Tích đề các: Các phép tích đề các có thể được kết hợp với các phép chọn(và đôi khi
với các phép chiếu) sử dụng dữ liệu từ cả hai mối quan hệ để tạo thành các liên kết. Sau khi
thay thế phép tích đề các bằng phép nối, biểu thức đại số quan hệ cho câu truy vấn sau khi
loại bỏ phép tích đề các.


×