mỘt sỐ phƯƠng phÁp xỬ lÝ truy vẤn mỚi trÊn cƠ sỞ …

27
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 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

Upload: others

Post on 26-Oct-2021

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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

Page 2: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

Công trình được hoà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

Page 3: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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, 157-

168

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)

Page 4: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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 toá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 quá 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 đã

Page 5: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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 toán (FQSIMSC, FQSIMMC, FQSEM) sử dụng độ đo tương tự dựa vào các đại lượng

tính toán của (SIM, SEM), thuật toá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.

Page 6: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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 toá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 hoà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

[6], một lớp có ba mức độ mờ �� = (��, ��, ��, ��): Mức lớp, mức đối tượng, mức giá trị thuộc tính.

Hình 1.1 mô tả lớp nhân viên trẻ mờ

Hình 1.1. Lớp mờ

Page 7: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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 quát hóa mờ

Hình 1.2. Quan hệ tổng quát 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ệ toà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ờ.

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ờ.

Nhân viên Dependent WITH 0.85 DEGREE Nhân viên WITH 0.85 DEGREE

Page 8: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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ờ

Page 9: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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ờ.

Hình 1.9: Chuyển đổ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

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 toá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.

Page 10: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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

𝑚𝑗]

12⁄

(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ó:

Page 11: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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 𝑜1và 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á

thuê 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 toán độ đo tương tự giữa các thuộc

tính này có thể được đo bằng:

𝑑(𝑎𝑗 , 𝑏𝑗) = [∑ |𝜇𝐴𝑖𝑗(𝑥) − 𝜇𝐴𝑖𝑗(𝑦)|

2𝑚𝑗𝑖=1

𝑚𝑗]

12⁄

; 𝑥, 𝑦 ∈ 𝐷𝑄 (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ó:

Page 12: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

9

𝑑(𝑎1, 𝑏1) = [|𝜇𝐴11(𝑥) − 𝜇𝐴11(𝑦)|

2+ |𝜇𝐴21(𝑥) − 𝜇𝐴21(𝑦)|

2+ |𝜇𝐴31(𝑥) − 𝜇𝐴31(𝑦)|

2

3 ]

1 2⁄

= [|0.0 − 0.0497|2 + |0.1979 − 0.667|2 + |0.3753 − 0.0000|2

3]

1 2⁄

≅ 0.35

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

1+𝑘1(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.5 + 0.8≅ 0.4403

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

𝑑(𝑎𝑗 , 𝑏𝑗) = [∑ |𝜇𝐴𝑖𝑗(𝑥) − 𝜇𝐵𝑖𝑗(𝑦)|

2𝑚𝑗𝑖=1

𝑚𝑗]

12⁄

; 𝑥, 𝑦 ∈ 𝐷 (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.

Page 13: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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á thuê 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, … , 𝑛) (2.13)

- 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.

Page 14: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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 toán độ đo khoảng cách DIS và tính toá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: Oresult = ;

3 fvalue[m] = 𝑓𝑢𝑧𝑧𝑦. gaussmf(𝑓𝑣𝑎𝑙𝑢𝑒) ; 4: 𝛼 = 0.5;

5: for t O do { // t là đối tượng được trích rút từ tâp O

6: 𝐀𝐫𝐚𝐲[m] = 𝑓𝑢𝑧𝑧𝑦. gaussmf(𝒕[𝐴𝑎𝑡𝑡𝑟]) ; Attvalue[m]= 𝐀𝐫𝐚𝐲[m];

7: For i = 0 to m { // m số tập con mờ

8: d += | fvalue[i] - Attvalue [i] |^2 ;

9: }

10: D = (d/m)^ ½;

11: 𝑆 =1−𝑑

1+𝐾∗𝑑;

12: 𝑆𝑖𝑚 =

𝛼 ∗ 𝑆

𝛼;

13: if là phép = then {

14: if 𝐒𝐢𝐦(fvalue, Attvalue) == fthreshold then

15: Oresult = Oresult t;

16: }

17: Else {

18: Case of {

19: ≠ :if 𝐒𝐢𝐦(fvalue, Attvalue) ≠ fthreshold then

10: Oresult = Oresult t;

21: < :if 𝐒𝐢𝐦(fvalue, Attvalue) < fthreshold then

Page 15: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

12

22: Oresult = Oresult t;

23: > :if 𝐒𝐢𝐦(fvalue, Attvalue) > fthreshold then

24: Oresult = Oresult t;

}

25: }

26: }

27: return Oresult;

28: }

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: Oresult = ;

3:

fvalue1[m] = 𝑓𝑢𝑧𝑧𝑦. gaussmf(fvalue1) ;

4: fvalue2[m] = 𝑓𝑢𝑧𝑧𝑦. gaussmf(fvalue2);

5: 𝛼 = 0.5;

6:

for t O do {// t là đối tượng được trích rút từ tâp O

7: Attvalue1[m] = 𝑓𝑢𝑧𝑧𝑦. gaussmf(𝑡[𝐴𝑎𝑡𝑡𝑟1] ) ;

8: Attvalue2[m] = 𝑓𝑢𝑧𝑧𝑦. gaussmf(𝑡[𝐴𝑎𝑡𝑡𝑟2] ); 9: For i = 0 to m {// m tâp con mờ

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

11: D2 +=(| fvalue2[i] - Attvalue2[i] |^2 );

12: }

13: D1=( D1 /m)^ ½ ;

14: D2=( D2 /m)^ ½ ;

15: 𝑆1 =1−𝐷1

1+𝐾∗𝐷1 ;

16: 𝑆2 =1−𝐷2

1+𝐾∗𝐷2 ;

17: 𝑆𝑖𝑚1 =

𝛼 ∗ 𝑆1𝛼

;

18: 𝑆𝑖𝑚2 =

𝛼 ∗ 𝑆2𝛼

;

19: if ( 𝑆𝑖𝑚1(fvalue1, Attvalue1) 1 fthreshold) and (𝑆𝑖𝑚2(fvalue2, Attvalue2) 2 fthreshold) then {

20: Oresult = Oresult t;

Page 16: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

13

21: }

22: if {𝑆𝑖𝑚1(fvalue1, Attvalue1) 1 fthreshold} or {𝑆𝑖𝑚𝑗(fvalue2, Attvalue2) 2 fthreshold} then {

23: Oresult = Oresult t;

24: }

25: }

26: return Oresult ;

27: }

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

toá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: Oresult = .

3:

4: 𝑓𝑣𝑎𝑙𝑢𝑒1[𝑚] = 𝑠𝑡𝑎𝑡𝑠. 𝑛𝑜𝑟𝑚(𝑓𝑣𝑎𝑙𝑢𝑒1) ; 𝑓𝑣𝑎𝑙𝑢𝑒2[𝑚] = 𝑠𝑡𝑎𝑡𝑠. 𝑛𝑜𝑟𝑚(𝑓𝑣𝑎𝑙𝑢𝑒2) ;

5:

for t O do {

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

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

8: For k=0 to m{

9:

10: SID +=min (Attvalue2[k], fvalue2[k]);

11: SID1 = SID /sum(fvalue2[k]);

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

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

14:

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

15: }

16: If (0 < 𝜇(Attvalue1, fvalue1) ≤ 1 𝒂𝒏𝒅 0 < 𝜇(Attvalue2, fvalue2 ) ≤ 1) then

17: Oresult = Oresult t;

18: If (0 < 𝜇(Attvalue1, fvalue1) ≤ 1 𝒐𝒓 0 < 𝜇(Attvalue2, fvalue2 ) ≤ 1) then

19: Oresult = Oresult t;

20: }

21: return Oresult ;

22: }

Page 17: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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 toá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 toà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 toá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 toá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 toá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ự đoán. Sau đó thực hiện vòng lăp 5 tiến

trình được thể hiện trong Thuật toán 2.4. Thuật toá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 toán các xác suất gán nhãn các điểm dữ liệu vào

một nhóm

γj(X) =πk𝒩(X|xk, Σk)

∑ πj𝒩Kj=1 (X|xj, Σj)

(2.15)

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

xj =∑ γj(Xn)XnNn=1

∑ γj(Xn)Nn=1

(2.16)

Σj =∑ γj(Xn)(Xn − xj)Xn − xj

TNn=1

∑ γj(Xn)Nn=1

(2.17)

πj =1

N∑γj(Xn)

N

n=1

(2.38)

4: Đánh giá log likelihood.

ln p(X|x, Σ, π) = ∑ln

N

n−1

=∑ln {∑πk(Xn|xk, Σk)

K

k=1

} (2.18)

N

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.

Cvi =∑ γj(Xn)XnNn=1

1n∑ xknk=1

(2.19)

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 toá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

Page 18: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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 toá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

2+1

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)

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:

𝑓(𝑥)𝑆 =1

2+1

2 𝑐𝑜𝑠 (

�� − 𝑥

�� − 𝑑−)Π 𝑑− ≤ 𝑥 ≤ ��

𝑓(𝑥)𝒵 =1

2+1

2 𝑐𝑜𝑠 (

𝑥 − ��

𝑑+ − ��)Π �� ≤ 𝑥 ≤ 𝑑+

} (2.25)

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:

𝑑− = �� −

𝑆𝑑

2− �� × 𝑜𝑣𝑒𝑟𝑙𝑎𝑝

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

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

𝑓(𝑥)𝑆 =1

2+1

2 𝑐𝑜𝑠 (

𝑑+ − 𝑥

𝑑+ − 𝑑−)Π (2.27)

Ví dụ 2.4: Dựa vào kết quả phân cụm của thuật toán EMC cho thuộc tính “Điểm môn toá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.

Page 19: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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_toán.Thấp 22 đến 48 0.0 0.44

Điểm_toán.Trung bình 53 đến 64 0.44 0.55

Điểm_toá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 toá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

Page 20: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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 Thời gian thực thi của thuật toán

FQSIMMC FQSEM FQINTERVAL

RoomBooking 4045 4001 3503

ProjectManagement 16810 16004 14012

CourseScoresManagement 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 toá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 Sử dụng bộ nhớ trong các thuật toán

FQSIMMC FQSEM FQINTERVAL

RoomBooking 2045 2024 896

ProjectManagement 6135 6072 2688

CourseScoresManagement 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.

Page 21: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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 toá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 toán kết hợp mờ hai ngôi được định nghĩa như: phép hợp

mờ fuzzy union (∪), phép giao mờ fuzzy intersection (∩), phép nối mờ fuzzy join (⋈),phép tích đề

các mờ fuzzy cross product (×), phép hiệu mờ fuzzy difference (≃) và phép chia mờ fuzzy division

(÷). Cho trước hai lớp mờ 𝐹��1 và 𝐹��2 và tập thuộc tính tương ứng của hai lớp này là 𝐴𝑡𝑡𝑟(𝐹��1) và

𝐴𝑡𝑡𝑟(𝐹��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. 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ờ (≃) : 𝐹�� = 𝐹��1 ≃ 𝐹��2 , 𝑛ế𝑢 𝐴𝑡𝑡𝑟′(𝐹��1 ) = 𝐴𝑡𝑡𝑟

′(𝐹��2 )

Page 22: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

19

6. Phép chia mờ (÷) : 𝐹�� = 𝐹��1 ÷ 𝐹��2 , 𝑛ế𝑢 𝐴𝑡𝑡𝑟′(𝐹��1 ) = 𝐴𝑡𝑡𝑟

′(𝐹��2 )

Trong đó, 𝐴𝑡𝑡𝑟′(𝐹��1 ) và 𝐴𝑡𝑡𝑟′(𝐹��2 ) có được từ 𝐴𝑡𝑡𝑟(𝐹��1) và 𝐴𝑡𝑡𝑟(𝐹��2) thông qua việc xóa độ

thuộc các thuộc tính từ 𝐴𝑡𝑡𝑟(𝐹��1) và 𝐴𝑡𝑡𝑟(𝐹��2) tương ứng. 𝜇𝐹�� được sử dụng để biểu diễn độ thuộc

thuộc tính của 𝐹��. Các phép toán mở rộng

3.1.3.1 Phép chiêu mờ (��)

Phép chiếu của 𝐹��1 trên S được xác định như sau:

𝐹�� = Π𝑆(𝐹��1) = {𝜇𝐹��(𝑜)|(∀𝜇𝐹��(𝑜′) ∧ 𝜇𝐹��(𝑜)[𝑆] = 𝜇𝐹��(𝑜

′)[𝑆] ∧ 𝜇𝐹��(𝑜) = 𝑚𝑒𝑟𝑔𝑒∪(𝜇𝐹��(𝑜)[𝑆]))}

3.1.3.2 Phép chọn mờ

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

của S cũng như thuộc tính có mức độ thuộc. Các đối tượng của 𝐹��′ được tạo bởi:

𝐹��′ = ��𝑠𝑢𝑏(𝐹��) = {𝜇𝐹��(𝑜)|𝜇𝐹��(𝑜) ∈ (𝐹��), 𝜑(𝜇𝐹��(𝑜))}

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 toá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.

Page 23: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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

𝜋D.foid,D.Tenduan,T.Hoten,T.Capdo,T.Ngaygiao((

(𝜎Tuoi=’trẻ’(𝐷𝑈𝐴𝑁))

⋈D.Foid=Q.Foid (DUANQUANTRONG ))

⋈Q.Foid=T.Foid (DUANTHEODOI )

)

Page 24: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

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 toán một cách hình thức [98], các phép toá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 toá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 toá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.

Page 25: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

22

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

( 𝜇𝐹��1(𝑜) 𝑢𝑛𝑖𝑜𝑛 𝜇𝐹��2(𝑜)) 𝑢𝑛𝑖𝑜𝑛 𝜇𝐹��3(𝑜) 𝜇𝐹��1(𝑜) 𝑢𝑛𝑖𝑜𝑛 (𝜇𝐹��2(𝑜)

𝑢𝑛𝑖𝑜𝑛 𝜇𝐹��3(𝑜) )

𝑅10: Các luật kế thừa đối với phép chọn và phép apply: nếu 𝐹��2 là một lớp con của 𝐹��1 ,

thì thể hiện của 𝜇𝐹��2(𝑜) là một tập con của thể 𝜇𝐹��1(𝑜):

𝜎𝜆𝑠.𝑓(𝜇𝐹��1(𝑜)) 𝑢𝑛𝑖𝑜𝑛 𝜎𝜆𝑠.𝑓(𝜇𝐹��2(𝑜))

= 𝜎𝜆𝑠.𝑓(𝜇𝐹��1(𝑜))𝑎𝑝𝑝𝑙𝑦𝑠𝜆𝑠.𝑒(𝜇𝐹��1(𝑜))𝑢𝑛𝑖𝑜𝑛 𝑎𝑝𝑝𝑙𝑦𝑠𝜆𝑠.𝑒(𝜇𝐹��2(𝑜))

= 𝑎𝑝𝑝𝑙𝑦𝑠𝜆𝑠.𝑒(𝜇𝐹��1(𝑜))

3.3.1.1 Thuât toán tối ưu hóa truy vấn mờ

Các bước của thuật toá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 toá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 toán có thể thực thi bởi một thuật toá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 toà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 quá 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.

Page 26: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

23

c) Đẩy phép chọn: Phép chọn có thể được đẩy xuống cây biểu thức, xa hơn nhất có thể. Bằng

cách đẩy phép chọn xuống càng sớm càng tốt. Biểu thức đại số quan hệ cho câu truy vấn sau

khi đẩy phép chọn.

Hình 3.3: Cây đại số đối tượng tối ưu hóa truy vấn mờ

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

3.4 Kết luận chương 3

Nhằm tăng tính hiệu quả trong quá trình xử lý truy vấn, mọi hệ quản trị cơ sở dữ liệu đều thực hiện

các bước tiền xử lý câu truy vấn, gọi là tối ưu hóa truy vấn được thực hiện trước khi thực thi và trả

kết quả cho người dùng. Trong đó cơ sở dữ liệu hướng đối tượng mờ là một mô hình mới cũng phải

thực hiện các bước tiền xử lý như vậy. Trong phần mục này, chúng tôi đề xuất một số tiếp cận mới

như sau:

1. Đề xuất đại số kết hợp mờ mới. Trong đó chúng tôi đã đị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ờ [CT4].

2. Đề xuất phương pháp tiền xử lý truy vấn nhằm đảm bảo hệ thống hoạt động hiệu quả cho

quá trình phân tích, kiểm tra, chuyển đổi câu truy vấn sang biểu thức đại số đối tượng mờ và

viết lại câu truy vấn [CT5], [CT6].

3. Phát triển thuật toán heuristic nhằm tối ưu hóa truy vấn đạ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 [CT1], [CT2].

Page 27: MỘT SỐ PHƯƠNG PHÁP XỬ LÝ TRUY VẤN MỚI TRÊN CƠ SỞ …

24

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

Các kết quả chính của luận án đạt được là:

1- Đề xuất bốn thuật toán xử lý truy vấn 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 toán (FQSIMSC, FQSIMMC, FQSEM) sử dụng độ đo tương tự dựa

vào các đại lượng tính toán của (SIM, SEM), thuật toán thứ tư FQINTERVAL xử lý truy vấn

trực tiếp trên các khoảng mờ được đề xuất.

2- Đề xuất thuật toán phân cụm EMC được cải tiến dựa trên thuật toán Expectation Maximization

(EM) bằng cách bổ sung bước (C) vào thuật toán để tăng độ mềm dẻo và giảm tối ưu hóa cục

bộ và tăng tối ưu hóa toàn cục trong quá trình phân cụm. Đề xuất phương pháp đánh giá tính

hiệu quả của thuật toán EMC dựa vào đánh giá sự khác biệt giữa các nhóm. Đề xuất phương

pháp phân khoảng mờ dựa vào kết quả phân cụm của thuật toán EMC.

3- Đề xuất đại số kết hợp mờ mới 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

cho mô hình cơ sở dữ liệu hướng đối tượng mờ. Đề xuất thuật toán xử lý và tối ưu hóa truy

vấn mờ bằng phương pháp heuristic dựa trên các quy tắc của phép biến đổi tương đương.

Những vấn đề đặt ra từ kết quả nghiên cứu của luận án:

Nghiên cứu mô hình liên kết khối mờ (Link Data Fuzzy Cube) nhằm tăng cường khả năng

truy vấn và hỗ trợ báo cáo thống kê trong mô hình cơ sở dữ liệu mờ.

Nghiên cứu phương pháp xử lý truy vấn mờ dựa trên lý thuyết dàn dao.

Nghiên cứu các thuật toán xứ lý song song cho truy vấn mờ.

Nghiên cứu mô hình xử lý truy vấn mờ ở mức cao có khả năng tương tác trên mọi các mô

hình cơ sở dữ liệu mờ đã đề xuất.