Mô hình này được đề xuất bởi Prade và Testemale ([21][22]) bằng cách mở rộng miền trị thuộc tính, sử dụng phân bố khả năng để biểu diễn dữ liệu mờ. Giá trị của một n-bộ t tại thuộc tính A được biểu diễn bởi phân bố khả năng chuẩn πA(t) trên miền trị mở rộng D∪{e}. Trong đó e là phần tử bổ sung vào mỗi miền trị, được sử dụng trong trường hợp thuộc tính A không áp dụng (inapplicable) cho bộ t.
Một quan hệ mờ trên tập thuộc tính {A1, A2, ... , An} là một tập con của tích Đề-Các:
∏(D1) × ∏(D2) × ... × ∏(Dn),
với ∏(Di) là tập các phân bố khả năng chuẩn trên miền trị Di của thuộc tính Ai
, i=1, 2, ..., n.
Dùng phân bố khả năng cho phép biểu diễn được nhiều loại dữ liệu: dữ liệu rõ, dữ liệu không áp dụng được, dữ liệu chưa biết, dữ liệu không có thông tin, dữ liệu với thông tin không chắc chắn. Khả năng biểu diễn dữ liệu mờ của mô hình này được mô tả trong bảng sau:
Thông tin Mô hình Prade – Testemale
Dữ liệu rõ: c πA(x)(e)=0 πA(x)(c)=1
πA(x)(d)=0 ∀d ∈ D, d ≠ c Không biết nhưng áp dụng
được.
πA(x)(e)=0
πA(x)(d)=1 ∀d ∈ D Không áp dụng được πA(x)(e)=1
Thông tin Mô hình Prade – Testemale
Hoàn toàn không biết πA(x)(d)=1 ∀d ∈ D ∪{e} Khoảng [m, n] πA(x)(e)=0
πA(x)(d)=1 ∀d ∈ [m, n] ⊆D πA(x)(d)=0 trong trường hợp khác Thông tin như là một phân bố
khả năng µa
πA(x)(e)=0
πA(x)(d)=µa(d) ∀d ∈ D Khả năng không áp dụng được
là λ và trong trường hợp áp dụng dữ liệu là µa
πA(x)(e)=λ
πA(x)(d)=µa(d) ∀d ∈ D
Bảng 1.3: Biểu diễn dữ liệu mờ trong mô hình Prade – Testemale
Biểu diễn dữ liệu trong các tình huống cổđiển
a) Biết chắc chắn lương của T là 500: πL(T) (e) =0; πL(T) (500) =1; πL(T) (d ) = 0, ∀d ∈ D – {500}.
b) b) T là người không có lương hay thuộc tính lương không áp dụng cho T: πL(T) (e) =1; πL(T) (d ) = 0, ∀d ∈ D.
c) Biết chắc chắn là T có lương nhưng không biết là bao nhiêu (unknown). Khi đó tất cả các giá trị đều có khả năng bằng nhau và bằng 1: πL(T) (e) =0; πL(T) (d ) = 1, ∀d ∈ D.
d) Hoàn toàn không biết gì về thông tin lương của T (no-information): πL(T) (e) =1; πL(T) (d ) = 1, ∀d ∈ D.
Biểu diễn dữ liệu không chắc chắn, không chính xác
e) Không biết chính xác lương nhưng chắc chắn nằm trong khoảng từ 200 đến 300: πL(T) (e) =0; πL(T) (d ) = 1, nếu 200 ≤ d ≤ 300;
πL(T) (d ) = 0 nếu d < 200 và d > 300.
f) Biết lương của T là cao. Khi đó dùng tập mờ cao với hàm thuộc µcao để biểu diễn πL(T) (e) =0; πL(T) (d ) = µcao (d), ∀d ∈ D.
g) Ta biết những thông tin rời rạc về lương của T: πL(T) (e) =0;
πL(T)(di ) = ai, i = 1, 2, ..., m;πL(T) (d ) = 0, ∀d ∈ D – {d1, d2, ..., dn}.
1.3. Ngôn ng truy vn d liu m
Ngày nay, ngôn ngữ truy vấn có cấu trúc (SQL) đã trở thành ngôn ngữ truy vấn chuẩn cho hầu hết hệ thống cơ sở dữ liệu thương mại. Các câu truy vấn truyền thống thiết lập các tiêu chuẩn chọn dữ liệu cứng nhắc và dữ liệu trả về phải chính xác với các tiêu chuẩn đó. Một câu truy vấn “mơ hồ” thiết lập các tiêu chuẩn chọn là mơ hồ - còn gọi là tiêu chuẩn mơ hồ hay tiêu chuẩn mờ và dữ liệu trả về là “gần” với các tiêu chuẩn đó. Hầu hết các hệ thống cơ sở dữ liệu quan hệ truyền thống không thể xử lý các câu truy vấn “mơ hồ” với các tiêu chuẩn mơ hồ. Do vậy, một cách tự nhiên, cần mở rộng ngôn ngữ SQL chuẩn sao cho có thể thiết lập được các câu truy vấn mềm dẻo với các tiêu chuẩn mờ. Ngôn ngữ SQL mờ (fuzzy SQL) là một mở rộng của ngôn ngữ SQL và cho phép thiết lập các câu truy vấn mềm dẻo với các tiêu chuẩn mờ. Ngôn ngữ SQL mờ có thể được xây dựng trên cơ sở dữ liệu truyền thống với dữ liệu rõ hoặc trên cơ sở dữ liệu mờ với dữ liệu mờ.
Hiện nay, có nhiều ngôn ngữ SQL mờ được phát triển và giới thiệu rộng rãi. Chúng cho phép thiết lập các câu truy vấn mờ trong khi vẫn giữ nguyên các quy tắc đã được sử dụng trong ngôn ngữ SQL truyền thống. Chẳng hạn như ngôn ngữ SQLf của Bosc và Pivert [6], trong đó, nguyên lý cơ bản của các ngôn ngữ SQL mờ là đưa các yếu tố mờ vào trong các khối SELECT-FROM-WHERE của SQL.
Luận văn sẽ giới thiệu một ngôn ngữ SQL mở rộng (SQLEx) là một mở rộng của SQL chuẩn cho phép thiết lập các câu truy vấn mềm dẻo với các tiêu chuẩn mơ hồ và xây dựng một chương trình mô phỏng hỗ trợ thực hiện các câu truy vấn này trên mô hình cơ sở dữ liệu truyền thống Cơ sở dữ liệu được
sử dụng trong chương trình là hệ quản trị cơ sở dữ liệu SQL Server 2000. Người sử dụng có thể định nghĩa các nhãn ngôn ngữ trên mỗi thuộc tính và thực hiện các câu truy vấn với các tiêu chuẩn mờ. Hơn nữa, luận văn cũng khảo sát, giới thiệu một ngôn ngữ SQL mờ trên mô hình cơ sở dữ liệu mờ gọi là FSQL. Các nội dung này được trình bày chi tiết trong chương 3 và chương 4.
1.4. Kt lu n chưng 1
Chương này đã trình bày các kiến thức cơ bản sau:
Các kiến thức cơ sở về tập mờ, các phép toán trên tập mờ; Quan hệ tương tự; Phân bố khả năng và các độđo khả năng và độđo cần thiết.
Tổng quát về các mô hình cơ sở dữ liệu đã và đang được phát triển bao gồm: mô hình tập con mờ, mô hình dựa trên quan hệ tương tự và mô hình dựa trên lý thuyết khả năng. Đồng thời cũng giới thiệu về ý nghĩa và vai trò của ngôn ngữ truy vấn dữ liệu mờ.
CHƯƠNG 2
CƠ SỞ DỮ LIỆU MỜ DỰA TRÊN QUAN HỆ TƯƠNG TỰ
Mô hình dữ liệu quan hệ do Codd đề xuất dựa trên lý thuyết tập hợp và được sử dụng cho các ứng dụng với dữ liệu có thông tin chính xác, rõ ràng. Tuy nhiên, nhiều ứng dụng trong thực tế như sinh học, di truyền học, hệ thống thông tin địa lý, kinh tế học, hệ thống dự báo thời tiết, v.v… dữ liệu thường không rõ ràng, không chính xác và mơ hồ. Để xử lý được nhiều kiểu dữ liệu khác nhau và hiểu được ngữ nghĩa của dữ liệu trong cơ sở dữ liệu, một vài mở rộng từ mô hình cơ sở dữ liệu truyền thống đã được đề xuất. Đó là cách tiếp cận dựa trên lý thuyết tập mờ, cách tiếp cận dựa trên quan hệ tương tự, phương pháp tiếp cận dựa trên lý thuyết khả năng và dựa trên lý thuyết khả năng mở rộng.
Chương này trình bày một phương pháp tiếp cận mở rộng mô hình cơ sở dữ liệu quan hệ truyền thống thành mô hình cơ sở dữ liệu quan hệ mờ dựa trên quan hệ tương tự, với những nội dung chính sau:
− Các khái niệm về khoá mờ, phụ thuộc hàm mờ, phụ thuộc hàm mờ một phần.
− Các dạng chuẩn mờ trong cơ sở dữ liệu mờ dựa trên quan hệ tương tự.
− Các thuật toán bảo toàn phụ thuộc và các phép phân tách có kết nối không mất thông tin.
− Các ví dụđể minh hoạ cho sự chuẩn hoá, bảo toàn phụ thuộc và các phép phân tách có kết nối không mất thông tin dựa trên các phụ thuộc hàm mờ của quan hệ mờ.
Nội dung chính của chương này được tham khảo trong tài liệu [4] .
2.1. C s d liu m da trên quan h tưng t
Phần này trình bày các định nghĩa về cơ sở dữ liệu mờ, quan hệ tương tự theo định nghĩa của Zadeh và mô hình cơ sở dữ liệu mờ dựa trên quan hệ tương tự.
2.1.1. Cơ sở dữ liệu quan hệ mờ
Mô hình quan hệ truyền thống được sử dụng rộng rãi hiện nay đã đạt được nhiều kết quả to lớn về mặt lý thuyết và ứng dụng. Tuy nhiên mô hình này chỉ biểu diễn và xử lý được những dữ liệu với thông tin chính xác, đầy đủ và có thểđịnh lượng được – gọi chung dữ liệu rõ mà không biểu diễn và xử lý được dữ liệu không chính xác và mờ.
Mô hình cơ sở dữ liệu quan hệ mờ là cơ sở dữ liệu có thể biểu diễn và xử
lý được dữ liệu với thông tin không chính xác và mờ.
2.1.2. Quan hệ tương tự
Quan hệ tương tựđược sử dụng để mô tả thế nào là 2 phần tử tương tự nhau trong cùng một miền trị. Một quan hệ tương tự ([33], [7]), s(x, y) trên
miền trị cơ sở D (gọi tắt là miền), là một ánh xạ mọi cặp phần tử trong miền D vào khoảng đóng [0,1]. Một quan hệ tương tự có tính phản xạ, đối xứng và Max - min bắc cầu.
Định nghĩa 2.1. Quan hệ tương tự trên miền D là một ánh xạ s : D × D →
1. Phản xạ: s(x, x) = 1 2. Đối xứng: s(x, y)=s(y, x)
3. Max-min bắc cầu: s(x, z) ≥ max y ∈D {min (s(x, y), s(y, z))}
2.1.3. Cơ sở dữ liệu quan hệ mờ dựa trên quan hệ tương tự
Mô hình cơ sở dữ liệu quan hệ mờ dựa trên quan hệ tương tự thực tế là một tổng quát hoá của mô hình quan hệ truyền thống. Nó cho phép giá trị tại mỗi thuộc tính có thể là đa trị (một tập giá trị có thể) và thay thế khái niệm đồng nhất bằng khái niệm tương tự.
Mô hình cơ sở dữ liệu dựa trên quan hệ tương tự cho phép giá trị tại mỗi thuộc tính là một tập giá trị và tất cả các giá trị đó phải nằm trong cùng một miền trị. Do vậy, mô hình này vẫn giữ được các tính chất giá trị thuộc tính định kiểu mạnh của mô hình quan hệ truyền thống. Tính chất này rất có ích cho việc xử lý truy vấn và các thao tác cập nhật. Nếu giá trị thuộc tính là chính xác và rõ ràng, thì giá trị là đơn trị, nếu giá trị thuộc tính là không chính xác và mơ hồ, thì một tập các giá trị tương tự với giá trị này được xem xét. Độ tương tự giữa các giá trị được định nghĩa bởi quan hệ tương tự trong miền trị thuộc tính.
Mô hình truyền thống so sánh 2 giá trị thuộc tính bằng cách kiểm tra hai giá trị đó có bằng nhau hay không. Quan hệ đồng nhất phản ánh điều này:
i(x,y)=1 nếu và chỉ nếu x=y và i(x, y)=0 trong trường hợp khác. Mô hình quan hệ tương tự so sánh 2 giá trị bằng cách đo sự gần nhau giữa 2 giá trị đó dựa trên quan hệ tương tựđã được mô tả trong miền trị thuộc tính.
2.2. Các dng chun m đi vi các quan h m.
Trong một thiết kế cơ sở dữ liệu logic, ràng buộc toàn vẹn có một vai trò rất quan trọng. Một trong những ràng buộc toàn vẹn quan trọng nhất là phụ thuộc hàm. Bởi vì, các phụ thuộc hàm phản ánh ngữ nghĩa về mối quan hệ
giữa các thuộc tính. Chúng giúp loại bỏ các thông tin dư thừa của các quan hệ trong cơ sở dữ liệu.
2.2.1. Phụ thuộc hàm mờ (ffd)
Các phụ thuộc hàm mờ (ffd) phản ánh ngữ nghĩa của các tập con thuộc tính trong thế giới thực.Các ffd được sử dụng để thiết kế các cơ sở dữ liệu mờ, làm giảm dư thừa dữ liệu và các dị thường trong cập nhật.
Trong mô hình truyền thống, một phụ thuộc hàm X→Y nói rằng các giá trị bằng nhau của Y tương ứng với các giá trị bằng nhau của X. Tuy nhiên,
định nghĩa về phụ thuộc hàm không được áp dụng trực tiếp tới cơ sở dữ liệu mờ dựa trên quan hệ tương tự vì các khái niệm “bằng” không được áp dụng trực tiếp trong mô hình cơ sở dữ liệu mờ. Trong mô hình quan hệ mờ, mức độ
“X xác định Y” có thể không nhất thiết là 1 như trong quan hệ rõ. Một cách tự nhiên, một giá trị trong khoảng [0,1] có thể được chấp nhận. Trong trường hợp này, định nghĩa của ffd trở thành “các giá trị tương tự của Y tương ứng với các giá trị tương tự của X”
Các phụ thuộc hàm mờ là các ràng buộc được xác định giữa các thuộc tính của lược đồ quan hệ mờ. Các phụ thuộc hàm mờ được định nghĩa dựa trên khái niệm về sự phù hợp (conformance) giữa các bộ dữ liệu (sau đây gọi tắt là bộ) [25][30][31].
2.2.1.1. Sự phù hợp của các bộ
Quan hệ tương tự của các giá trị thuộc tính định nghĩa thế nào là sự phù hợp giữa 2 bộ trên thuộc tính đó. Một định nghĩa chuẩn về sự phù hợp của các bộđược đưa ra như sau:
Định nghĩa 2.2. [4] Sự phù hợp của thuộc tính Ak được định nghĩa trên miền trị Dk cho bất kỳ 2 bộ t1 và t2 trong quan hệ r, ký hiệu bởi C( Ak [t1 , t2] ).
C(Ak[t1,t2]) = min {minx∈d1{maxy∈d2{s(x,y)}},minx ∈d2{maxy∈d1{s(x,y)}}}
Trong đó d1 là tập giá trị của thuộc tính Ak đối với bộ t1, d2 là tập giá trị của thuộc tính Akđối với bộ t2, s(x, y) là một quan hệ tương tự của các giá trị x và y, và s là một ánh xạ của mọi cặp phần tử trong miền Dk vào đoạn [0, 1].
Ví dụ 2.1. Cho quan hệ mờ
NGƯỜI = (TÊN, NĂNG LỰC, THU NHẬP)
Các quan hệ tương tự của miền thuộc tính được cho trong các bảng sau:
TÊN Nam Hùng Quang Hà
Nam 1 0 0 0
Hùng 0 1 0 0
Quang 0 0 1 0
Hà 0 0 0 1
Bảng 2.1: Quan hệ tương tựđối với thuộc tính TÊN
NĂNG LỰC Rất kém Kém Trung bình Tốt Xuất sắc Rất kém 1 0.75 0.3 0.3 0.3 Kém 0.75 1 0.3 0.3 0.3 Trung bình 0.3 0.3 1 0.6 0.6 Tốt 0.3 0.3 0.3 1 0.65 Xuất sắc 0.3 0.3 0.3 0.65 1
Bảng 2.2: Quan hệ tương tựđối với thuộc tính NĂNG LỰC
THU NHẬP Rất thấp Thấp Trung bình Cao Rất cao
Rất thấp 1 0.8 0.2 0.2 0.2
Thấp 0.8 1 0.2 0.2 0.2
Trung bình 0.2 0.2 1 0.6 0.6
THU NHẬP Rất thấp Thấp Trung bình Cao Rất cao
Rất cao 0.2 0.2 0.6 0.8 1
Bảng 2.3: Quan hệ tương tựđối với thuộc tính THU NHẬP
TÊN NĂNG LỰC THU NHẬP
t1 {Nam} {Kém, rất kém} {rất thấp} t2 {Quang} {trung bình} {thấp, trung bình} t3 {Hùng} {trung bình, tốt} {thấp} t4 {Hà} {trung bình} {rất thấp}
Bảng 2.4: Các bộ dữ liệu đối với quan hệ NGƯỜI
Sự phù hợp đối với thuộc tính THU NHẬP cho các bộ t2 và t3 được tính như sau:
C(Thu nhập[t2, t3]) = min{min {max {s(thấp, thấp )}, max{s(trung bình, thấp)}}, min {max{s( thấp, thấp), s( thấp, trung bình)}}}
= min {min {max{1}, max{0.2}}, min {max{1,0.2}}} = min {min {1, 0.2}, min {1}}
= min {0.2, 1} = 0.2
Trong mô hình dữ liệu quan hệ truyền thống, cả d1 và d2 là tập một phần tử, và quan hệ tương tự giữa bất cứ bộ nào chỉ có thể là 0 hoặc 1. Ở đây, quan hệ đồng nhất được thay thế bởi mô tả s(x, y) mà quan hệ đồng nhất là một trường hợp đặc biệt. Để mô tả sự gần nhau giữa 2 bộ trên một tập các thuộc tính, định nghĩa về sự phù hợp được mở rộng trong tài liệu tham khảo [30] như sau:
Định nghĩa 2.3. Sự phù hợp của tập thuộc tính X cho bất kỳ 2 bộ t1 và t2 trong quan hệ r, ký hiệu bởi C( X [t1, t2] )
C ( X [t1, t2] ) = minAk∈X {C( Ak [t1, t2] )}.
2.2.1.2.Sự phù hợp với độđo khả năng
Mô hình quan hệ dựa trên quan hệ tương tự cho phép giá trị tại mỗi thuộc tính là đa trị (một tập giá trị có thể) và có một quan hệ tương tự giữa các giá trị thuộc tính được định nghĩa trên miền trị thuộc tính. Tuy nhiên trên thực tế dữ liệu thường có một độ chắc chắn thể hiện khả năng có thể xảy ra của dữ liệu. Trong mô hình dựa trên lý thuyết khả năng, mỗi giá trị của thuộc tính thường được gắn với một độđo khả năng thể hiện khả năng có thể xảy ra của dữ liệu đó. Trong mô hình dựa trên quan hệ tương tự, mặc dù cho phép một tập các giá trị có thể tại mỗi thuộc tính nhưng nó không thể hiện được độ chắc chắn xảy ra của mỗi giá trị đó. Để khắc phục, người ta thường kết hợp độ đo khả năng của dữ liệu trong lý thuyết khả năng vào mô hình dựa trên quan hệ tương tự. Lúc này, mỗi giá trị trong mô hình dựa trên quan hệ tương tự sẽđược gắn thêm một độđo khả năng thể hiện khả năng có thể xảy ra của