Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 12 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
12
Dung lượng
206,58 KB
Nội dung
TẠP CHÍ KHOA HỌC, Đại học Huế, Số 50, 2009 ÁP DỤNG KỸ THUẬT PHÂN NHÓM VÀO PHÂN MẢNH NGANG LỚP TRONG CƠ SỞ DỮ LIỆU HƯỚNG ĐỐI TƯỢNG Nguyễn Thị Hương Giang Trường Đại học Sư phạm, Đại học Huế TĨM TẮT Bài báo trình bày việc áp dụng kỹ thuật phân nhóm vào phân mảnh ngang lớp sở liệu hướng đối tượng khiến phân mảnh thời thích nghi với tập ứng dụng người sử dụng mới; đồng thời đề xuất phương pháp phân nhóm gia tăng dựa phân cấp nhân phân lớp lại tập đối tượng thuộc tính đối tượng tăng lên I Giới thiệu Phân mảnh liệu hướng nghiên cứu sở liệu (CSDL), kỹ thuật thiết kế sở liệu mức logic nhằm giảm bớt truy xuất không cần thiết đến liệu, cho phép thực song song câu truy vấn cách chia thành tập câu truy vấn tác động lên mảnh nhằm nâng cao việc thực ứng dụng Trong mô hình quan hệ, có kiểu phân mảnh: phân mảnh ngang, phân mảnh dọc phân mảnh hỗn hợp Phân mảnh ngang phân hoạch quan hệ thành tập quan hệ con, quan hệ chứa tập (các hàng) quan hệ ban đầu Phân mảnh dọc phân hoạch quan hệ thành tập quan hệ con, quan hệ định nghĩa tập thuộc tính quan hệ ban đầu Phân mảnh hỗn hợp phân hoạch quan hệ thành tập con, xác định phân mảnh dọc, tập xác định phân mảnh ngang Trong năm gần đây, ứng dụng ngày phức tạp, mơ hình CSDL trước mơ hình quan hệ bộc lộ nhiều nhược điểm việc mơ hình hóa xử lý liệu Có nhiều mơ hình CSDL đời phát triển nhằm khắc phục hạn chế đó, số chúng mơ hình CSDL hướng đối tượng Có nhiều điểm tương đồng phân mảnh ngang CSDL quan hệ CSDL hướng đối tượng Tuy nhiên, mơ hình CSDL hướng đối tượng có đặc trưng riêng như: tính kế thừa, tính bao gói, phân cấp lớp,… nên áp dụng việc phân mảnh ngang từ mơ hình quan hệ sang mơ hình đối tượng Do đó, phân mảnh liệu CSDL hướng đối tượng nhiều nhà nghiên cứu quan tâm Vấn đề đưa báo áp dụng kỹ thuật phân nhóm vào phân mảnh ngang lớp CSDL hướng đối tượng 27 Một hệ CSDL hướng đối tượng phân tán muốn tối ưu hóa việc thực ứng dụng cần phải có phân mảnh lớp lược đồ phân phối mảnh nơi phân tán để cực tiểu việc truyền liệu Một tiếp cận phân mảnh ngang sử dụng phương thức gộp nhóm khai thác liệu cho việc phân chia thể đối tượng thành mảnh trình bày [1], [2], [3], [4] Nhưng ứng dụng CSDL thực liên quan tới yếu tố thời gian, đó, địi hỏi phân mảnh để giải tình trạng thời điểm, có số ứng dụng truy cập vào hệ thống số khác lại khỏi hệ thống Trong trường hợp này, để có phân mảnh phù hợp với tập ứng dụng người sử dụng mới, áp dụng lược đồ phân mảnh ban đầu (ứng với CSDL ban đầu), cách làm khơng hiệu Vì vậy, cần có phương pháp phân mảnh mở rộng giải trường hợp ứng dụng người sử dụng đến hệ thống phân mảnh thời phải thích nghi theo Mặt khác, nói chung, phương pháp phân nhóm thời bắt đầu với tập đối tượng biết trước, với tập thuộc tính biết trước Nhưng có nhiều ứng dụng có tập thuộc tính mơ tả đối tượng mở rộng ra, suy Do đó, chúng tơi đề xuất phương pháp phân nhóm gia tăng dựa phân cấp nhân (Hieararchical Core Based Incremental Clustering - HCBIC), phân lớp lại tập đối tượng thuộc tính đối tượng tăng lên II Mơ hình vector tốn học CSDL hướng đối tượng Phân mảnh CSDL đối tượng có nghĩa phân mảnh lớp nó, giả sử gọi lớp C Một lớp C xếp C=(K, A, M, I), với A tập thuộc tính đối tượng, M tập phương thức, K định danh lớp I tập thể lớp C Trong phạm vi báo, giải phân mảnh nguyên thủy [4] Các lớp tổ chức phân cấp kế thừa, đó, lớp chuyên biệt hóa lớp cha Bài tốn giải trường hợp thừa kế đơn, chuyển sang thừa kế bội không ảnh hưởng tới thuật toán phân mảnh, miễn xung đột thừa kế giải bên mơ hình liệu Liên kết đối tượng lớp cụ thể hóa phép tốn cụ thể Một đối tượng O thể lớp C C lớp chuyên biệt hóa có liên kết (kết hợp) với O phân cấp kế thừa Một đối tượng O thành viên lớp C O thể C thể lớp C Một CSDL hướng đối tượng tập lớp từ phân cấp kế thừa, với tất thể Root lớp đặc biệt, tổ tiên (lớp cha) tất lớp CSDL Do đó, mơ hình chúng ta, đồ thị kế thừa Các quan hệ khác lớp CSDL mối quan hệ kết hợp kết tập Một điểm vào CSDL thể siêu lớp (meta-class) biến cho trước hệ thống Một điểm vào cho phép tìm kiếm từ tới tất lớp thể lớp của (bao gồm nó) Thường có nhiều điểm vào CSDL hướng đối tượng Cho trước thừa kế phức H, biểu thức đường dẫn P C1.A1…An , n≥1 với C điểm vào H, A1 thuộc tính lớp C1, Ai thuộc tính 28 lớp Ci H, Ci miền thuộc tính Ai-1 lớp Ci-1 (1≤i≤n) Mục đích phân mảnh điều phối phân mảnh hệ CSDL hướng đối tượng tối ưu thực thi truy vấn người sử dụng Một truy vấn hướng đối tượng với cấu trúc sau: q = (lớp mục tiêu, mệnh đề tính chất), “lớp mục tiêu” xác định lớp mà truy vấn trả thể đối tượng nó, “mệnh đề tính chất” biểu thức logic thuộc tính lớp hình thức nối chuNn Biểu thức logic xây dựng sử dụng vị từ đơn giản: attribute Θ value với Θ ∈{ , ≥, ≤, ≠} Gọi Q = {q1, …, qt} tập truy vấn mà phân mảnh thực PredQ(C) = {p1, , pn} tập vị từ đơn giản PredQ (C) = { p ∈ PredQ / p điều kiện thuộc tính lớp C} Cho trước lớp C C”, với C” lớp C, PredQ(C”) ⊇ PredQ(C) Do đó, tập vị từ cho lớp C” gồm tất vị từ xác định trực tiếp thuộc tính C” vị từ định nghĩa thuộc tính lớp cha C thuộc tính thừa kế từ C Với đối tượng Oi tập Inst(C ) - tập tất thể lớp C, i = m, m=|Inst(C)|, ta kết hợp vector điều kiện = (ai1,…,ais), với PredQ(C) = {p1,…,ps}: 0, p j (Oi ) = false aij = 1, p j (Oi ) = true Các đối tượng gộp nhóm với phân mảnh cho đối tượng phân mảnh có độ tương tự cao, độ tương tự so với đối tượng nhóm khác thấp Độ tương tự đối tượng đo hàm khoảng cách, áp dụng cho vector điều kiện mô tả đối tượng Chúng ta sử dụng khoảng cách Euclide để đo độ tương tự đối tượng: d E (ai , a j ) = s ∑(a il − a jl ) với ai, aj vector điều kiện Oi, Oj ∈Inst(C) l =1 2.1 Phân mảnh gia tăng sử dụng thuật toán CBIC (Core-Based Incremental Clustering) Trước tiên, từ CSDL trung tâm tới CSDL phân tán, ta áp dụng phương pháp phân mảnh khởi tạo Trong [1], [2], [3], [4], cho trước tập truy vấn Qinit = {q1,…,qn}, mệnh đề phân mảnh ban đầu tập đối tượng Inst(C) lớp C đòi hỏi trước tiên đối tượng Inst(C) phải mơ hình hóa mơ tả Sau đó, áp dụng phương pháp phân nhóm k-means khơng gian vector mơ tả Inst(C), kết nhóm biểu diễn phân mảnh cho lớp C Phân mảnh thời CSDL hướng đối tượng phân tán phát triển để tối ưu hóa thực thi tập truy vấn ban đầu, Qinit Khi truy vấn vào hệ thống Qnew = Qinit ∪ {qp+1, …, qt}, phân mảnh tồn phải thích nghi theo Chúng ta áp 29 dụng phương pháp gộp nhóm dựa k-means Core Based Incremental Clustering (CBIC) – phương pháp gộp nhóm gia tăng dựa nhân ([5], [6]) Mở rộng tập truy vấn Qinit thành Qnew có nghĩa với số lớp CSDL, tập vị từ có kết hợp với lớp tăng lên Do đó, lớp phải phân mảnh lại để phù hợp với tập hợp truy vấn Cho C lớp Với PredQ-init(C) = {p1,…,pn} xác định PredQ-new(C) ∪ {pn+1,…,ps} Do đó, vector điều kiện đối tượng Oi ∈ Inst(C) mở rộng sau: a i' = a i , , a i n , a in + , , a is 42 kiện ban4của đối tượng O đầu a điều i i Phương pháp CBIC bắt đầu việc phân chia Inst(C) thành nhóm cách áp dụng phương pháp k-means bước phân mảnh ban đầu Cho {K1, p K2,…,Kp} phân mảnh ban đầu Inst(C), Ki ∩ Kj = ∅, i ≠j, UK l = Inst (C ) l =1 Phương pháp CBIC phân chia đối tượng Inst(C): {K1’, K2’,….Kp’} sau mở rộng tập truy vấn Nó ý tưởng bổ sung số thành phần (các đặc tính, thuộc tính) vào vector điều kiện thành phần không mang lại nhiều thơng tin hệ thống, việc xếp thành nhóm cũ tương tự với phương pháp Thuật tốn xác định sau đối tượng bên phân mảnh Ki có khả kết hợp lại với nhóm Chúng đối tượng, sau mở rộng thuộc tính, cịn gần với trọng tâm (trung bình nhóm) nhóm Ki Các đối tượng tạo gọi nhân (core) lớp Ki, gọi Corei Trọng tâm Ki tính giá trị trung bình tất vector điều kiện mở rộng đối tượng Ki Các nhân tất phân mảnh Ki, i = p, nhóm khởi tạo cho bước lặp phân chia bắt đầu Tiếp đó, thuật toán CBIC tiếp tục theo cách thuật toán k-means thực Thuật toán CBIC, cho kết hiệu thực k-means từ tập đối tượng có thuộc tính mở rộng Ví dụ minh họa CSDL hướng đối tượng tập truy vấn Xét cấu trúc phân lớp CSDL trường đại học: Các truy vấn sau thực lớp CSDL cho trên: q1: cho biết tất sinh viên tốt nghiệp ghi tên vào khoa Component 30 Oriented Programming khoa Intelligent Systems, q1= (Grad, Grad.Dept in (“Component Oriented Programming”, “Intelligent Systems”) ) q2: cho biết tất sinh viên chưa tốt nghiệp ghi tên vào khoa Computer Science có điểm trung bình từ đến 10, q2 = (UnderGrad, UnderGrad.Dept like “CS%” and UnderGrad.Grade between and 10) q3: cho biết tất sinh viên chưa tốt nghiệp ghi tên vào khoa Computer Science khoa Mathematics có tuổi lớn 24, q3 = (UnderGrad, (UnderGrad.Dept like “Math%” or UnderGrad.Dept like “CS%”) and UnderGrad.Age >=24) q4: cho biết tất nghiên cứu sinh viết báo, q4 = (Researcher, Researcher, count(Researcher Doc) >=2 q5: cho biết tất giảng viên làm việc khoa Component Oriented Programming khoa Intelligent Systems có lương cao 40.000, q5: (Prof, Prof Dept in (“Component Oriented Programming“, “Intelligent Systems“) Prof Salary >=40.000 q6: cho biết tất giảng viên có đăng ấn phNm IEEE ACM, q6 = (Prof, Prof.Doc.Pulisher in (“IEEE”, “ACM”) q7: cho biết tất sinh viên thi trượt, q7 = (Student, Student.Grade 35.000) q9: cho biết tất sinh viên tốt nghiệp có đăng báo, q9 = (Grad, Grad.count(Grad.Doc)>=1) q10: cho biết tất đội ngũ nhân viên có lương cao 12.000, q10 = (Staff, Staff.Salary > 12.000) q11: cho biết tất nghiên cứu sinh viết số báo số báo trung bình nghiên cứu sinh, q11 = (Researcher, Researcher.Count(Paper) < Avg( Researcher.Count(Paper) ) q12: cho biết tất sinh viên tốt nghiệp lập gia đình, q12 = (Grad, Grad.MaritalStatuss=”married”) q13 : cho biết tất sinh viên chưa tốt nghiệp ghi tên vào khoa Mathematics khoa Computer Science, q13 = (Undergraduate, Undergraduate.Dept like “MathCS%”) q14: cho biết tất người có tuổi lớn 30, q14 = (Person, Person, Person.Age > 30) q15 : cho biết tất trợ giảng có tuổi lớn 28, q15 = (Prof, Prof.Position = “assistant professor” and Prof.age > 28) 31 q16 : cho biết tất sinh viên có quốc tịch Hungary Đức, q16 = (Student, Student.Nationality in (“ hungarian”, “ german”) Các truy vấn từ q1 đến q12 truy vấn ban đầu – có từ phân mảnh ngang lược đồ phân phối khởi tạo: Qinit = {q1, …., q12} Các truy vấn từ q13 đến q16 truy vấn vào hệ thống, phân mảnh tồn phải thích ứng để phù hợp để tối ưu hóa tập ứng dụng mới: Qnew = Qinit ∪ {q13, …, q16} III Phương pháp phân nhóm gia tăng dựa phân cấp nhân (Hieararchical Core Based Incremental Clustering - HCBIC) Phân lớp phương pháp phân biệt nhóm bên tập đối tượng thực tập đặc tính thuộc tính có liên quan đối tượng Việc phân nhóm thực tập đặc tính thuộc tính có liên quan đối tượng Các đối tượng bên nhóm xem gần đối tượng nhóm khác nhờ vào khái niệm độ tương tự Độ tương tự đối tượng đo hàm khoảng cách bán khoảng cách giá trị thuộc tính mơ tả đối tượng Phương pháp phân nhóm phân cấp biểu diễn lớp kỹ thuật phân nhóm Có kiểu phân nhóm phân cấp Cho trước tập gồm n đối tượng số k, k≤n, phương pháp lên (bottom-up) bắt đầu với n singleton (tập hợp có thành phần), trộn chúng lại với đạt số lượng nhóm k mong muốn Tại bước, nhóm tương tự chọn để trộn Còn phương pháp xuống (topdown) nhóm chứa tất n đối tượng chia đạt số lượng nhóm k mong muốn Nói chung, phương pháp bắt đầu với tập đối tượng biết trước, đo tập thuộc tính biết trước Nhưng có nhiều ứng dụng có tập đối tượng động, tập thuộc tính mơ tả đối tượng liên quan mở rộng Do đó, để có phân lớp đối tượng điều kiện này, thuật tốn phân nhóm phải thực nhiều lần, tập đối tượng ban đầu, lần đối tượng thuộc tính thay đổi lại thực lại thuật tốn Rõ ràng điều hiệu Vì vậy, chúng tơi trình bày báo phương pháp phân nhóm gia tăng dựa phương pháp phân cấp nhân phân lớp lại tập đối tượng tập thuộc tính tăng lên Đầu tiên, dùng thuật toán HCA (Hieararchical Clustering Algorithm) [7] để phân chia thành nhóm, sau đó, thuộc tính thay đổi (được mở rộng) áp dụng thuật tốn HCBIC (Hieararchical Core Based Incremental Clustering) Điều hiệu thực lại thuật toán HCA tập đối tượng có thuộc tính mở rộng 3.1 Định nghĩa Cho {O1, O2, …, On} tập đối tượng phân lớp Mỗi đối tượng đo với tập m thuộc tính khởi tạo mơ tả m vector đa chiều Oi = (Oi1, …, Oim), Oik∈ ℜ, 1≤ i ≤ n, ≤ k ≤ m Thơng thường, thuộc tính liên quan tới đối tượng 32 chuNn hóa để đảm bảo độ đo chúng [3] Cho {K1, K2, …, Kp} tập nhóm có áp dụng thuật tốn HCA Mỗi nhóm tập đối tượng K j = {O1j , O 2j , , O nj j } , 1≤ j ≤ p Tâm nhóm Kj biểu diễn giá trị trung bình nhóm xác định bởi: nj nj ∑ Ok ∑ Okm , , k =1 f j = k =1 nj nj Ta sử dụng hàm khoảng cách d cho đối tượng phân biệt, cụ thể dùng hàm khoảng cách Euclide: m d( Oi, Oj) = dE(Oi, Oj) = ∑ (O il − O jl ) l =1 Việc đo thuộc tính thực sau mở rộng s (s ≥ 1) thuộc tính mới, ký hiệu (m+1), (m+2),…, (m+s) Sau mở rộng, vector đối tượng trở thành Oi’ = (Oi1, …, Oim, Oim+1, …Oim+s), 1≤ i ≤ n Lấy điểm bắt đầu bước phân lớp trước bên nhóm xét điều kiện đối tượng mở rộng Oi j ' cịn đặt nhóm Kj’ hay khơng Để làm điều đó, biểu diễn khoảng cách fj Oi j ' tới tâm cũ fj’ tới tâm nhóm so sánh với khoảng cách tới tâm fr fr’ nhóm khác ≤ r ≤ p, r≠j Nếu đối tượng nhóm j thỏa mãn điều kiện độ tương tự đủ lớn để giữ với nhau, giữ chúng nhóm Các đối tượng cịn lại nhóm j (những đối tượng khơng thỏa mãn điều kiện trên) trích phân phối đối tượng vào tập hợp phần tử Tiến trình điều chỉnh nhóm trả kết số nhóm k’, k ≤ k’ ≤ n Để có lại k nhóm đích, tiếp tục trộn nhóm theo cách thuật tốn HCA Nhưng không bắt đầu lại từ tập hợp phần tử, số bước giảm đáng kể Định lý: Nếu d E (Oi j , f j ) ≤ d E (Oi j , f r ), ∀j , r ,1 ≤ j , r ≤ p, r ≠ j (1) nj ∑O kl Oil ≥ k =1 nj , ∀l ∈ {m+1, m+2, , m+s} (2) với đối tượng Oij ' nhóm K 'j đối tượng Oij ' gần với tâm f j' tâm f r' nhóm khác, ≤ j , r ≤ p, r ≠ j 33 Chứng minh: nj nr O ∑Okl m+ s m+ s ∑ kl d (Oij ' , f j' ) − d (Oij ' , f r' ) = d (Oij , f j ) + ∑ k =1 − Oil − d (Oij , f r ) − ∑ k =1 − Oil nj nr l =m+1 l = m+1 Sử dụng bất đẳng thức (1), ta có : nj nr Okl O m+ s ∑ m + s ∑ kl − Oil − ∑ k =1 − Oil d (Oij ' , f j' ) − d (Oij ' , f r' ) ≤ ∑ k =1 l = m +1 nr nj l = m +1 nr nj Okl ∑ Okl m+ s ∑ ⇔ d (Oij ' , f j' ) − d (Oij ' , f r' ) ≤ ∑ k =1 − k =1 nj nr l = m +1 nr nj Okl ∑ Okl ∑ * k =1 + k =1 − 2* Oil nj nr Nếu bất đẳng thức (2) với thuộc tính Oij ' bất đẳng thức trở thành: nr nj O ∑ Okl m + s ∑ kl ' ' j' j' k =1 − k =1 d (Oi , f j ) − d (Oi , f r ) ≤ − ∑ nj nr l = m +1 Vì tất khoảng cách d (O , f j' ) ≤ d (Oij ' , f r' ), ∀r ,1 ≤ r ≤ p, r ≠ j ⇔ d (Oij ' , f j' ) − d (Oij ' , f r' ) ≤ số không âm nên: j' i Điều kiện (1) định lý đòi hỏi đối tượng Oi ∈ K j , bước cuối tiến trình phân nhóm (khởi tạo), gần với tâm nhóm tâm nhóm khác Tất đối tượng Oi ∈ K j thỏa mãn bất đẳng thức (1) có mở rộng đối tượng thỏa mãn điều kiện (2), có độ tương tự đủ lớn với đối tượng khác nhóm khơng tương tự với đối tượng nhóm khác sau mở rộng tập thuộc tính 3.2 Thuật tốn HCBIC Chúng ta dùng tính chất định nghĩa phần để xác định nhóm, đối tượng giữ lại với mà khơng di chuyển sang nhóm khác Các đối tượng kết mở rộng tập thuộc tính, chúng hình 34 thành nên gọi nhân nhóm Định nghĩa: a, Đặt StrongCore j = {Oi j ' | Oi j ' ∈ K 'j , Oi j thỏa bất đẳng thức (1) Oi j ' thỏa bất đẳng thức (2)} tập đối tượng K 'j (trước mở rộng) gần với tâm nhóm chúng với tâm nhóm khác sau mở rộng, thuộc tính l thỏa mãn bất đẳng thức (2), m + ≤ l ≤ m + s b, sat (Oi j ' ) tập tất thuộc tính l, m + ≤ l ≤ m + s đối tượng Oi j ' thỏa mãn bất đẳng thức (2) weakCore j = {Oi j ' | Oi j ' ∈ K 'j , Oi j nj j' | sat (Oi ) |≥ ∑ | sat (O j' k k =1 nj thỏa bất đẳng thức (1) )| } Tập thuộc tính đối tượng K 'j thỏa mãn bất đẳng thức (1) trước mở rộng; sau mở rộng trung bình cộng thuộc tính đối tượng K 'j thỏa mãn bất đẳng thức (2) c) Core j = StrongCore j StrongCore j ≠ ∅ , khơng Core j = weakCore j OCore j = K 'j \ Core j tập đối tượng ngồi nhân nhóm K 'j Với thuộc tính l, m + ≤ l ≤ m + s nhóm K 'j có đối tượng thỏa bất đẳng thức (2) tương ứng với thuộc tính l Đó đối tượng có giá trị thuộc tính l lớn số đối tượng K 'j chắn thỏa quan hệ (giá trị lớn tập hợp lớn giá trị trung bình tập hợp đó) Nhưng khơng đảm bảo nhóm K 'j có đối tượng thỏa quan hệ (2) cho tất thuộc tính m+1,…, m+s Nếu có đối tượng thỏa bất đẳng thức (1) ( StrongCore j ≠ ∅ ) theo định lý trên, chúng gần với tâm nhóm f j' với tâm nhóm f r' khác, ≤ r ≤ p, r ≠ j Sau đó, Core j lấy với StrongCore j , tâm nhóm j thuật tốn gia tăng Nhưng StrongCore j = ∅ ta chọn tâm nhóm j cho đối tượng ổn định (khơng thay đổi) số đối tượng K 'j Các đối tượng ( weakCore j ) thay đổi số đối tượng StrongCore j Tuy nhiên, điều không chắn vì: đối tượng tập “yếu hơn” weakCore j lại thích hợp đối tượng StrongCore j , ta thấy điều kiện (2) định lý biểu diễn điều kiện đủ cho đối tượng K 'j 35 gần với f j' với tâm nhóm f r' khác, điều kiện đủ Các nhân nhóm nhóm tiến trình phân nhóm gia tăng Thuật tốn phân nhóm gia tăng dựa phân cấp nhân dừng đạt số nhóm mong muốn Input: - X = {O1 , , On } : tập m đối tượng phân nhóm trước ' ' - Tập X'={O1 , , On } : tập m+s đối tượng mở rộng phân nhóm, Oi' có m thành phần Oi , - Khoảng cách dE đối tượng không gian đa chiều, - p: số lượng nhóm mong muốn, - K={K1 , , K p } : tập đối tượng phân lớp trước X ' Output: Phân lớp lại K'={K1' , , K p } cho đối tượng X’ Thuật tốn mơ tả sau (theo ngôn ngữ “tựa” Pascal): Begin For tất nhóm Kj ∈K Tính Corej = (StrongCorej ≠ ∅) ? StrongCorej:=WeakCorej Tính Ocorej = Kj \ Corej EndFor C=∅ //tập hợp nhóm thời For i=1 to p If Corei ≠ ∅ C = C ∪ {Corej} EndIf For tất O ∈ Ocorej C = C ∪ {O} //thêm tập hợp phần tử vào C EndFor EndFor While |C| > p ( Cu* , Cv* ) := arg m in(Cu , Cv )d E (Cu , Cv ) Cnew = Cu* ∪ Cv* C = C \{Cu + , Cv+ ) ∪ {Cnew } EndWhile K ' =C End 36 Khoảng cách hai nhóm dE(Cu,Cv) tính sau: d E (Cu , Cv ) = ∑ a ∈C ∑b i u j ∈ Cv d E (ai , b j ) | Cu | × | Cv | Thuật tốn bắt đầu việc tính nhân nhóm cũ Các nhân nhóm khởi tạo bước lặp Sau đó, thuật tốn thực thuật tốn HCA 3.3 So sánh tính hiệu thuật toán HCBIC thuật toán HCA Chúng ta so sánh thuật toán HCBIC HCA theo tiêu chí số lần lặp độ “chặt” nhóm đạt Định nghĩa độ phân tán DISP (dispersion) tiến trình phân nhóm sau: p ∑ DISP( K ) = ∑ d (Oi , O j ) Oi ,O j ∈K k ,i > j C|2 k | K k =1 p Với K={K1, …, Kp} tập hợp nhóm có sau áp dụng thuật tốn phân nhóm DISP biểu diễn khoảng cách trung bình đối tượng nhóm Khoảng cách nhỏ “chặt” so với khoảng cách HCA [8] IV Kết luận Áp dụng kỹ thuật phân nhóm vào phân mảnh ngang lớp CSDL hướng đối tượng phương pháp xử lý có hiệu toán phân mảnh Đây hướng nghiên cứu có giá trị thực tiễn Trong tương lai, chúng tơi ứng dụng phân tích thuật toán CSDL thực nghiệm cụ thể đồng thời nghiên cứu lý thuyết phân nhóm phân cấp áp dụng cho kỹ thuật phân nhóm khác TÀI LIỆU THAM KHẢO 10 Darabant, A.S., Campan, A., Semi-supervised learning techniques: kmeans clustering in OODB Fragmentation, IEEE International Conference on Computational Cybernetics ICCC 2004, Vienna University of Technology, Austria, August 30 - September (2004), 333–338 11 Darabant, A.S., Campan, A., Hierarchical AI Clustering for Horizontal Object Fragmentation, In Proc of Int Conf of Computers and Communications, Oradea, May (2004), 117–122 12 Darabant, A.S., Campan, A., AI Clustering Techniques: a New Approach to Object Oriented Database Fragmentation, in Proceedings of the 8th IEEE International Conference on Intelligent Engineering Systems, Cluj Napoca, (2004), 73–78 37 13 Darabant, A.S., Campan, A., Cret, O., Hierarchical Clustering in Object Oriented Data Models with Complex Class Relationships, in Proceedings of the 8th IEEE International Conference on Intelligent Engineering Systems, Cluj Napoca, (2004), 307–312 14 S¸erban, G., Campan, A., Core Based Incremental Clustering, Studia Universitatis “Babe¸s-Bolyai”, Informatica, XLXI(2), (2005), 89–96 15 S¸erban, G., Campan, A., Incremental Clustering Using a Core-Based Approach, in Proc of the 20th International Symposium on Computer and Information Sciences (ISCIS’05), Istanbul, Turkey, 2005 16 S Aeberhard, D Coomans, and O de Vel The classification performance of rda Tech Rep Dept of Computer Science and Dept of Mathematics and Statistics, James Cook University of North Queensland, (1992), 92-01 17 Gabriela S¸erban and Alina Cˆampan A New Core-Based Method For Hierarchical Incremental Clustering Proceedings of the Seventh International Symposium on Symbolic and Numeric Algorithms for Scientific Computing, 2005 (SYNASC’05) 18 C Manning and H Schutze Foundation of statistical natural language processing MIT, 1999 19 G Serban and A Campan Core based incremental clustering Studia Universitatis “Babes¸-Bolyai”, Informatica, L(1), (2005), 89–96 20 Alina Campan, Adrian Sergiu Darabant, Gabriela Serban Clustering techniques for adaptive horizontal fragmentation in object oriented databases Proceedings of the International Conference on Theory and Application of Mathematics and Informatics ICTAMI 2005 - Alba Iulia, Romania APPLYING CLUSTERING TECHNIQUES FOR HORIZONTAL FRAGMENTATION IN OBJECT ORIENTED DATABASES Nguyen Thi Huong Giang College of Pedagogy, Hue University SUMMARY In this paper, we introduce an incremental method to apply clustering techniques for horizontal fragmentation in object oriented databases which makes current fragments adapt with new applications; and propose a clustering method based on an hierarchical agglomerative approach, called Hierarchical Core Based Incremental Clustering (HCBIC), that is capable of the re-partition of the objects set, when the attribute sets increase 38 ... nhóm Khoảng cách nhỏ “chặt” so với khoảng cách HCA [8] IV Kết luận Áp dụng kỹ thuật phân nhóm vào phân mảnh ngang lớp CSDL hướng đối tượng phương pháp xử lý có hiệu toán phân mảnh Đây hướng nghiên. .. nghiên cứu có giá trị thực tiễn Trong tương lai, chúng tơi ứng dụng phân tích thuật toán CSDL thực nghiệm cụ thể đồng thời nghiên cứu lý thuyết phân nhóm phân cấp áp dụng cho kỹ thuật phân nhóm. .. CSDL hướng đối tượng phân tán muốn tối ưu hóa việc thực ứng dụng cần phải có phân mảnh lớp lược đồ phân phối mảnh nơi phân tán để cực tiểu việc truyền liệu Một tiếp cận phân mảnh ngang sử dụng