Giới Thiệu Về Kabala | Hành Trình Thấu Hiểu Bản Thân | Kabala.vn
Thuật Toán BEA (Bond Energy Algorithm)
1. Cơ Sở Dữ Liệu Nâng Cao
Thuật Toán BEA
(Bond Energy Algorithm)
Giảng viên hướng dẫn : TS Đặng Thị Thu Hiền
Sinh viên : Lương Bá Hợp MSSV 1105068
Lớp : Hệ Thống Thông Tin K52
1
3. Giới thiệu
Thuật toán năng lượng nối BEA (Bond Energy
Algorithm )
Tác giả Hofer & Severance , 1975 và Navathe
et al , 1984.
Ý nghĩa :
- Xác định các nhóm thuộc tính
- Độ phức tạp O(푛2)
- Không làm thay đổi kết quả tụ nhóm
3
4. Giới thiệu
Thuật toán thực hiện các hoán vị hàng , cột
sinh ra 1 ma trận ái lực CA (Cluster Afinity
Maxtrix) .
Hoán vị được thực hiện sao cho số đo ái lực
chung AM ( Global Affinity Measure) là lớn
nhất .
4
6. Giới thiệu
Hàm cực đại hoá chỉ xét những lân cận gần
nhất , vì thế các giá trị lớn được nhóm lại với
nhau .
Ma trận ái lực thuộc tính AA có đối xứng nên
số đo ái lực có thể rút gọn
AM = 푛 푛 푖=1
푗=1
aff( 퐴푖 , 퐴푗 )[aff( 퐴푖 ,
퐴푗−1 ) + aff( 퐴푖 , 퐴푗+1 )]
6
7. Thuật toán
Quá trình sinh ma trận ái lực gồm 3 bước :
Bước 1 - Khởi gán : Đặt và cố định 1 trong các
cột của AA vào trong CA . Cột 1 được chọn
Bước 2 - Thực hiện lặp : Lấy lần lượt 1 trong n-
1 cột còn lại (I là số cột đã được đặt vào CA ) và
thử đặt vào i+1 vị trí còn lại trong ma trận CA .
Chọn đặt sao cho AM là lớn nhất . Lặp đến hết
các cột .
7
8. Giới thiệu
Quá trình sinh ma trận ái lực gồm 3 bước :
Bước 3 - Sắp thứ tự hàng : Khi thứ tự cột đã
xác định , các hàng cũng cần đặt lại để các vị trí
tương đối cảu chúng phù hợp với các vị trí
tương đối của cột
8
10. DEMO
Chương trình được viết bằng ngôn ngữ Java ,
Phần mềm viết chương trình NetBean
Chương trình có dữ liệu đầu vào là 1 file text
lưu kích cỡ ma trận , và các phần tử trong ma
trận . Đầu ra là ma trận ái lực CA
10