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

Rút gọn thuộc tính trong bảng quyết định không đầy đủ sử dụng metric

Một phần của tài liệu NGHIÊN CỨU MỘT SỐ PHƯƠNG PHÁP RÚT GỌN THUỘC TÍNH TRONG BẢNG QUYẾT ĐỊNH KHÔNG ĐẦY ĐỦ (Trang 55 -55 )

2.4.1 Tập rút gọn của bảng quyết định không đầy đủ dựa trên metric

Định nghĩa 2.4. (Tập rút gọn của bảng quyết định không đầy đủ dựa trên metric)

Cho bảng quyết định không đầy đủ IDS= (U, C∪D, V, f) và tập thuộc tính R⊆C. R

đƣợc gọi là một tập rút gọn của C dựa trên Metric nếu thỏa mãn điều kiện

(1) dE(K(R), K(R∪D)) = dE(K(C), K(C∪D)).

(2) r ∈R, dE (K(R-{r}), K((R-{r}∪D))≠dE (K(C), K(C∪D)).

2.4.2. Thuật toán tìm tập rút gọn của bảng quyết định không đầy đủ

Định nghĩa: 2.5 (Độ quan trọng của thuộc tính dựa trên metric) Cho bảng quyết

định không đầy đủ IDS=(U, C∪D,V,f), B C và b∈C–B. Độ quan trọng của thuộc

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

SIGB(b) = dE (K(B), K(B∪D)) - dE (K(B∪{b}), K(B∪{b}∪D)). Với giả thiết

S

ф(ui)=U với mọi ui∈U, i ∈ {1..|U|}.

Theo Mệnh đề 2.6 ta có dE (K(B), K(B∪D) )≥dE (K(B∪{b}), K(B∪{b}∪D)) nên

SIGB(b) ≥ 0. Do đó SIGB(b) đƣợc tính bởi lƣợng thay đổi khoảng cách giữa B và B

∪ D khi thêm thuộc tính b vào B, SIGB(b) càng lớn thì lƣợng thay đổi khoảng cách

càng lớn, hay thuộc tính b càng quan trọng và ngƣợc lại. Độ quan trọng của thuộc tính b đặc trƣng cho khả năng phân lớp của thuộc tính b vào các lớp quyết định, hay chất lƣợng phân lớp của thuộc tính b, và đƣợc sử dụng làm tiêu chuẩn lựa chọn thuộc tính trong thuật toán Heuristic tìm tập rút gọn của bảng quyết định không đầy đủ.

Nhƣ đã trình bày ở trên để xây dựng thuật toán heuristic tìm tập rút gọn, ta có thể sử dụng hai hƣớng tiếp cận: hƣớng tiếp cận từ dƣới lên (bottom-up) và hƣớng tiếp cận từ trên xuống (top - down). Phần này trình bày một thuật toán hueristic tìm tập rút gọn không tính toán lõi theo hƣớng tiếp cận bottom – up. Ý tƣởng của thuật toán là xuất phát từ tập thuộc tính rỗng R:= { }, lần lƣợt bổ sung vào tập R các thuộc tính có độ quan trọng lớn nhất cho đến khi tìm đƣợc tập rút gọn. Thuật toán sử dụng chiến lƣợc Thêm – Xóa [13]

Cho bảng quyết định không đầy đủ IDS= (U, C∪D, V, f), để xây dựng thuật

toán tìm tập rút gọn, trƣớc hết phần này trình bày một thuật toán để tính các lớp dung sai SP{a}(ui) khi biết các lớp dung sai SP(ui) với mọi ui∈U, P C, a∈C-P nhƣ sau.

Thuật toán 2.1 [2] Tính SP∪{a}(ui) với mọi ui∈U

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Đầu ra: SP{a}(ui) với mọi ui∈U 1. For each SP(ui) do

2. Begin

3. If a(ui) = „*‟ then SP{a}(ui) = SP(ui);

4. else

5. Begin

6. SP∪{a}(ui) ={ ui };

7. For each uj∈SP(ui), uj≠ui

8. If a(uj) = „*‟ or a(uj) = a(ui) then SP∪{a}(ui) = SP∪{a}(ui) ∪{uj};

9. End;

10. End;

*Trình bày chứng minh tính đúng đắn của thuật toán 2.1

Nếu a(ui) = „*‟ thì S{a}(ui) = U, theo Tính chất 1.2 (Liang [8])

SP∪{a}(ui)=SP(ui)∩S{a}(ui)=SP(ui)∩U=SP(ui). Do đó dòng lệnh số 3 tính đúng SP{a}(ui). Ngƣợc lại, dòng lệnh từ số 5 đến số 9 tính đƣợc tập SP(ui)∩S{a}(ui). Theo Tính chất 1.2 to có SP(ui)∩ S{a}(ui) = SP{a}(ui).

* Độ phức tạp của thời gian thuật toán 2.1

Dễ thấy, độ phức tạp thời gian để tính SP∪{a}(ui) là O(| SP∪{a}(ui) |). Do đó độ

phức tạp thời gian để tính SP∪{a}(ui) với mọi ui ∈ U là

2 P a i 1 1 (| S u |) (| U ) (| U ). U U i i O O O

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Bảng 2.3. Bảng quyết định không đầy đủ minh họa ví dụ 2.3

U a1 a2 a3 d u1 1 1 0 1 u2 1 1 0 1 u3 1 * 0 0 u4 * 2 2 1 u5 2 2 * 0

Ta có U={ u1, u2, u3, u4, u5}, C={ a1, a2, a3}. Giả P= { a1}, a={ a2}

SP(u1)= SP(u2) = SP(u3) = { u1, u2, u3, u4}, SP(u4) =U, SP(u5) ={ u4, u5}. Thực hiện các bƣớc của thuật toán 2.1 ta có:

1. Xét SP(u1), do u1(a2) ≠ nên ban đầu SP{a}(u1) =S{ a1, a2}(u1)= {u1}. Thực hiện vòng lập For tại câu lệnh số 7 và số 8:

Xét u2 ∈SP(u1), do u2(a2) = u1(a2) nên SP∪{a}(u1)= SP∪{a}(u1)∪ {u2}= { u1, u2} Xét u3 ∈SP(u1), do u3(a2) = „*‟ nên SP∪{a}(u1)= SP∪{a}(u1)∪{u3}= { u1, u2 , u3} Xét u4 ∈SP(u1), do u4(a2) ≠u1(a2) nên SP∪{a}(u1) = { u1, u2 , u3}.

Vậy SP∪{a}(u1) = { u1, u2 , u3}.

2. Tƣơng tự nhƣ trên, ta tính đƣợc SP∪{a}(u2) = { u1, u2 , u3}, SP∪{a}(u3) ={u1, u2 ,

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Thuật toán 2.2. [2] Thuật toán heuristic tìm một tập rút gọn tốt nhất của bảng quyết định không đầy đủ sử dụng metric.

Đầu vào: Bảng quyết định không đầy đủ IDS = (U, C∪D,V, f).

Đầu ra: Một tập rút gọn tốt nhất R.

1. R= ;

2. Tính dE(K(R), K (R∪D)); 3. Tính dE(K(C), K (C∪D));

// Thêm dần vào R các thuộc tính có độ quan trọng lớn nhất

4. While dE(K(R), K (R∪D)) ≠dE(K(C), K (C∪D)) do 5. Begin

6. For each a∈C-R 7. Begin

8. Tính dE(K(R∪{a}), K (R∪{a}∪D));

9. Tính SIGR(a)= dE(K(R), K(R ∪D)) - dE(K(R∪{a}), K (R∪{a}∪D)); 10. End;

11. Chọn am∈C-R sao cho R( m)

ax

a C R

SIG a M

(SIGR(a)}; 12. R=R∪{am};

13. Tính dE(K(R), K (R∪D)); 14. End;

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

15. For each a∈R 16. Begin

17. Tính dE(K(R- {a}), K((R – {a}∪D));

18. If dE(K(R- {a}), K((R – {a}∪D))=dE(K(C), K (C∪D)) then R=R- {a}; 19. End;

20. Return R;

*Trình bày chứng minh tính đúng đắn của thuật toán 2.2

Với bƣớc thêm dần vào R các thuộc tính có độ quan trọng lớn nhất, tập thuộc tính R thu đƣợc từ câu lệnh 4 đến 14 thỏa mãn điều kiện bảo toàn khoảng cách dE(K(R), K(R∪D)) = dE(K(C), K (C∪D)).

Với bƣớc loại bỏ các thuộc tính dƣ thừa, câu lệnh từ 15 đến 19 đảm bảo tập R là tối thiểu, nghĩa là r ∈R, dE(K(R- {r}), K((R – {r}∪D)) ≠ dE(K(C), K (C∪D)). Theo Định nghĩa 2.4, R là tập rút gọn dựa trên Metric.

*Độ phức tạp thời gian của Thuật toán2.2

Ta có SIGR(a) = 2 {a} {a}

1 1 ( ) ( ) ( ) ( ) U R i R D i R i R D i i

S u S u S u S u

U

Để tính SIGR(a) ta chỉ cần tính

S

R {a}(

u

i),

S

R {a} D(

u

i)

S u

R( i),

( )

R D i

S u

đã tính ở vòng lặp trƣớc. Sử dụng thuật toán 2.1 đẻ tính

S

R {a}(

u

i) khi đã

biết ( )

R i

S u

với mọi ui ∈U thì độ phức tạp thời gian là O(|U|2), do đó giả sử D={d}, độ phức tạp để tính tất cả các SIGE(a) là ( |C|+ ( |C| -1)+...+1)* |U|2 = ( |C|*( |C| - 1)/2) * |U|2 = O(|C|2|U|2). Độ phức tạp thời gian để chọn thuộc tính có độ quan trọng

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

lớn nhất là |C|+ ( |C| -1)+...+1 = |C|* ( |C| -1)/2= O(|C|2). Do đó, độ phức tạp thời gian của thuật toán là O(|C|2|U|2).

* Đánh giá thuật toán 2.2 dựa trên lý thuyết

Trên lớp bài toán tìm tập rút gọn của bảng quyết định không đầy đủ, thuật toán sử dụng độ đo lƣợng thông tin của tri thức và các thuật toán sử dụng ma trận dung sai đều có độ phức tạp thời gian là O(|C|3

|U|2). Bằng việc sử dụng thuật toán 2.1 để tính

S

R {a}(

u

i) khi đã biết

S u

R( i), độ phức tạp thời gian của thuật toán sử dụng

metric giảm xuống còn O(|C|2|U|2). Do đó độ phức tạp thời gian của thuật toán sử

dụng metric nhỏ hơn.

Ví dụ 2.4. Xét bảng quyết định về các xe hơi

Bảng 2.4. Bảng quyết định không đầy đủ về các xe hơi

Ô tô Đơn giá Km đã đi Kích thƣớc Tôc độ tối đa d

u1 Cao Cao Đầy đủ Thấp Tốt u2 Thấp * Đầy đủ Thấp Tốt

u3 * * Gọn nhẹ Cao Xấu

u4 Cao * Đầy đủ Cao Tốt

u5 * * Đầy đủ Cao Tuyệt hảo

u6 Thấp Cao Đầy đủ * Tốt

Bảng 2.4 là bảng quyết định không đầy đủ IDS= (U, C∪{d}, V, f) với U={u1,

u2, u3, u4, u5, u6 }, |U|=6 và C={ a1, a2, a3, a4} với a1 (đơn giá), a2 (Km đã đi), a3 (Kích thƣớc), a4 (Tốc độ tối đa).

Các lớp dung sai của phủ U/SIM(C) là:

SC(u1)={u1}, SC(u2)={u2, u6}, SC(u3)={u3}, SC(u4)={u4, u5}, SC(u5)={ u4, u5, u6}, SC(u6)={u2, u5, u6}

Các lớp dung sai của phủ U/SIM({a1}) là:

S{a1}(u1) = S{a1} (u4) ={ u1, u3,u4,u5} S{a1} (u2) = S{a1} (u6) ={ u2, u3,u5,u6}, S{a1} (u3) = S{a1} (u5) =U.

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Các lớp dung sai của phủ U/SIM({a2}) là:

S{a2}(u1) = S{a2} (u2) = S{a2} (u3) = S{a2} (u4) = S{a2} (u5) = S{a2} (u6) = U

Các lớp dung sai của phủ U/SIM({a3}) là:

S{a3}(u1)=S{a3}(u2)=S{a3}(u4)=S{a3}(u5)=S{a3}(u6)={u1,u2,u4,u5,u6}, S{a3}(u3)={u3}.

Các lớp dung sai của phủ U/SIM({a4}) là:

S{a4}(u1)=S{a4}(u2)={u1,u2,u6},S{a4}(u3)=S{a4}(u4)=S{a4}(u5)={u3,u4,u5,u6}, S{a4}(u6)=U

Các lớp dung sai của phủ U/SIM({d}) là:

S{d}(u1)=S{d}(u2)= S{d}(u4)=S{d}(u6)={u1,u2,u4,u6 }, S{d}(u3)=u3, S{d}(u5)= {u5}

Thực hiện các bƣớc của thuật toán 2.2 ta có:

dE( K(C), K(C∪{d})) = 2 1 1 4 ( ( ) ( ) ( )) ) 36

(

U i C i d i C i

S u S u S u

U

Đặt R= và tính SIG (a1) = 2 { 1} { 1, } 1 1 ( ( ) ( ) ( ) ( ) ) 0 U i d i a i a d i i

S u S u S u S u

U

SIG (a2) = 2 { 2} { 2, } 1 1 ( ( ) ( ) ( ) ( ) ) 0 U i d i a i a d i i

S u S u S u S u

U

SIG (a3) = 2 { 3} { 3, } 1 1 10 ( ( ) ( ) ( ) ( ) ) 36 U i d i a i a d i i

S u S u S u S u

U

SIG (a4) = 2 { 4} { 4, } 1 1 8 ( ( ) ( ) ( ) ( ) ) 36 U i d i a i a d i i

S u S u S u S u

U

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ Chọn thuộc tính a3 có độ quan trọng lớn nhất và R={ a3 }. dE( K({a3}), K({a3,d})) = 3 3 2 a a 1 1 8 ( ( ) ( ) ( )) ) 36

(

U i i d i i

S u S u S u

U

Do đó dE( K({a3}), K({a3,d}))≠dE( K(C), K(C∪{d})). Chuyển vòng lặp thứ 2. SIG{a3}(a1)= 3 1 3 1 3 3 2 {a , } {a ,a } {a ,a , } {a } 1 1 2 ( ( ) ( ) ( ) ( ) ) 36 U i d i i d i i

S u S u S u S u

U

SIG{a3}(a2)= 3 2 3 2 3 3 2 {a , } {a ,a } {a ,a , } {a } 1 1 ( ( ) ( ) ( ) ( ) ) 0 U i d i i d i i

S u S u S u S u

U

SIG{a3}(a4)= 3 3 4 3 4 3 2 {a , } {a ,a } {a ,a , } {a } 1 1 4 ( ( ) ( ) ( ) ( ) ) 36 U i d i i d i i

S u S u S u S u

U

Chọn thuộc tính a4 có độ quan trọng lớn nhất, và R={a3, a4}.

Tính dE( K({a3, a4}), K({a3, a4, d})) 4

36= dE( K(C), K(C∪{d})). Chuyển đến vòng lập For thực hiện kiểm tra tập R thu đƣợc.

Theo tính toán ở trên, dE( K({a3}), K({a3, d})) ≠ dE( K(C), K(C∪{d})). Mặt khác dE( K({a4}), K({ a4, d})) 10

36≠ dE( K(C), K(C∪{d})). Do đó thuật toán kết thúc và R= {a3, a4} là một rút gọn “tốt nhất” của C.

2.5 Kết luận chƣơng 2

1) Tìm hiểu về Entropy Liang mở rộng trên hệ thông tin không đầy đủ và một số tính chất của entropy Liang mở rộng.

2) Nghiên cứu, tìm hiểu một metric trên họ các phủ dựa trên entropy Liang mở rộng và chứng minh một số tính chất của metric trên hệ thông tin không đầy đủ và bảng quyết định không đầy đủ.

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

3) Tìm hiểu phƣơng pháp rút gọn thuộc tính trong bảng quyết định không đầy đủ sử dụng metric.

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Chƣơng 3. CHƢƠNG TRÌNH THỬ NGHIỆM

Trong luận văn này, em đã tìm hiểu và nghiên cứu chƣơng trình thử nghiệm thuật toán heuristic tìm một tập rút gọn tốt nhất của bảng quyết định không đầy đủ

sử dụng metric bằng ngôn ngữ C#bằng bộ công cụ lập trình Visual Studio 2010.

3.1 Mô tả dữ liệu

a) Dữ liệu đầu vào

Dữ liệu cho thuật toán là bảng quyết định không đầy đủ lƣu trữ dạng file excel 2003 theo cấu trúc sau:

Dữ liệu đƣợc tổ chức dạng bảng.

Trang tính lƣu nội dung dữ liệu phải đặt tên là Sheet1.

Mỗi cột trong bảng tính đại diện cho mỗi thuộc tính. Dòng cuối cùng là thuộc tính quyết định, các dòng khác là các thuộc tính điều kiện.

Dòng đầu tiên chứa tên các thuộc tính

Mỗi dòng tiếp theo là một đối tƣợng (bản ghi)

Ô giao giữa dòng và cột chứa dữ liệu của thuộc tính tại bản ghi đó.

Một số bộ dữ liệu mẫu đƣợc sử dụng trong luận văn:

*Bộ dữ liệu 1 về xe hơi

Bảng 3.1. Bảng quyết định không đầy đủ về các xe hơi

Đơn giá Km đã đi Kích thƣớc Tốc độ tối đa d

Cao Cao Đầy đủ Thấp Tốt

Thấp * Đầy đủ Thấp Tốt

* * Gọn nhẹ Cao Xấu

Cao * Đầy đủ Cao Tốt

* * Đầy đủ Cao Tuyệt hảo

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

*Trong đó:

Các cột là các thuộc tính với thuộc tính điều kiện: Đơn giá, Km đã đi, Kích thƣớc, Tốc độ tối đa và thuộc tính quyết định: d.

Các dòng là các đối tƣợng (bản ghi).

*Thông tin các thuộc tính:

Đơn giá: Cao, thấp Km đã đi: Cao

Kích thƣớc: Đầy đủ, gọn nhẹ

Tốc độ tối đa: Thấp, cao d: Tốt, xấu, tuyệt hảo

*Giá trị thuộc tính thiếu (được chỉ định bởi "*")

Thuộc tính Số thiếu giá trị

1 2 2 4 4 1 *Phân lớp: d Tốt:4 Xấu:1 Tuyệt hảo:1

*Bộ dữ liệu 2 về bệnh gan: là bảng dữ liệu về các bệnh nhân gan với 20 thuộc tính về tình trạng của bệnh nhân nhƣ: Tuổi, Giới tính, các triệu chứng: Dùng thuốc, Mệt mỏi, Biếng ăn…và các chỉ số y tế...

*Trong đó: Các cột là các thuộc tính, có 20 thuộc tính, các dòng là các đối tƣợng, có 149 đối tƣợng.

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

*Thông tin các thuộc tính

1. Tuổi: 10, 20, 30, 40, 50, 60, 70, 80 2. Giới tính: male, female

3. STEROID: no, yes 4. Dùng thuốc: no, yes 5. Mệt mỏi: no, yes

6. Tình trạng bất ổn: no, yes 7. Biếng ăn: no, yes

8. Gan sƣng to: no, yes 9. Sơ gan: no, yes

10. Viêm lá lách: no, yes 11. SPIDERS: no, yes 12. Cổ trƣớng: no, yes 13. Giãn tĩnh mạch: no, yes

14. Sắc tố mật: 0.39, 0.80, 1.20, 2.00, 3.00, 4.00 15. ALK PHOSPHATE: 33, 80, 120, 160, 200, 250 16. SGOT: 13, 100, 200, 300, 400, 500,

17. ALBUMIN: 2.1, 3.0, 3.8, 4.5, 5.0, 6.0

18. PROTIME: 10, 20, 30, 40, 50, 60, 70, 80, 90 19. HISTOLOGY: no, yes

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

*Giá trị thuộc tính thiếu: (được chỉ định bởi "*")

Thuộc tính Số thiếu giá trị

3 1 5 1 6 1 7 1 8 9 9 9 10 4 11 4 12 4 13 4 14 4 15 28 16 3 17 12 18 61 * Phân lớp: Lớp Die:32 Live:11

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

năm 1985, có số đối tƣợng là: 205, số thuộc tính là: 24 các thuộc tính ở đây liên quan thông số về xe nhƣ: hãng sản xuất, loại nhiên liệu đi, xe mấy cửa, vị trí động cơ...chiều dài, chiều rộng, chiều cao, trọng lƣợng...

*Thông tin các thuộc tính

1.symboling: 1, -1.

2.make: alfa-romero, Audi, BMW, Chevrolet, honda, Isuzu, Mazda, Mercedes-Benz, mercury, jaguar, Mitsubishi, Nissan, dodge.

3.fuel-type: diesel, gas. 4.aspiration: std, turbo. 5.num-of-doors: two, four

6.body-style: wagon,sedan, hatchback, convertible, hardtop. 7.drive-wheels: 4wd, FWD, RWD.

8.engine-location: front, after. 9.wheel-base:86,6-120,9. 10.length: 141,1-208,1. 11.width: 60,3-72,3 12.height: 47,8-59,8.

13.curb-weight: 1488-4066.

14.engine-type: DOHC, l , OHC, ohcv, rotor.

15.num-of-cylinders: four, six, five, three, two, eight, twelve. 16.engine-size: 61-326.

17.fuel-system: 1bbl, 2bbl, 4bbl, IDI, MFI, mpfi, spdi, spfi. 18.stroke: 2,68-4,17. 19.compression-ratio: 7-23. 20.horsepower: 48-288. 21.peak-rpm: 4150-6600. 22.city-mpg: 13-49. 23.highway-mpg: 16-54.

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

*Giá trị thuộc tính thiếu: (được chỉ định bởi "*")

Thuộc tính Số thiếu giá trị

5 2 18 4 20 2 21 2 *Phân lớp: price Low:141 High:64

b) Dữ liệu đầu ra: Là danh sách các thuộc tính trong tập rút gọn tốt nhất.

3.2 Xây dựng chƣơng trình

Chƣơng trình thực nghiệm sử dụng thuật toán heuristic, đƣợc viết bằng ngôn ngữ C#, trên bộ Visual Studio 2010 sử dụng phiên bản .Net Framewok 2.0. Yêu cầu của hệ thống khi sử dụng chƣơng trình:

- Cài đặt .Net Framework phiên bản 2.0 trở lên. - Hệ điều hành tối thiểu Windows XP SP2

- Trên máy tính PC với cấu hình Pentium 1GHz, 256 MB bộ nhớ RAM trở lên.

Mã nguồn đã đƣợc biên dịch thành tệp thực thi .exe trên môi trƣờng Windows nên chỉ cần cài đặt bộ thƣ viện yêu cầu ở trên là có thể chạy đƣợc chƣơng trình.

* Hướng dẫn sử dụng

Chuẩn bị dữ liệu dạng file excel 2003 theo đúng định dạng đã mô tả ở trên, nếu định dạng dữ liệu bị sai, chƣơng trình thực thi sẽ báo lỗi.

Chạy file: Mở file chạy TapRutGon.exe  chọn File dữ liệu  tìm đƣờng dẫn

đến file excel nhấp nút “Tìm tập rút gọn”, chƣơng trình sẽ tính toán và đƣa ra

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Bố cục giao diện chƣơng trình tìm tập rút gọn từ bảng quyết định không đầy đủ gồm 3 phần:

Vùng dataGridView phía trên cùng hiển thị dữ liệu bảng quyết định không đầy đủ đƣợc xử lý.

Hai Button: Chọn file dữ liệu (để thực hiện chọn dữ liệu) và Tìm tập rút gọn (để bắt đầu tìm tập rút gọn). Khi bắt đầu tìm tập rút gọn thì nút “Tìm tập rút gọn” sẽ mờ đi để ngƣời sử dụng thấy đƣợc nó đang thực hiện, và sẽ hiện lại khi quá trình tính toán kết thúc. Vùng bộ đếm thời gian sẽ hiển thị tổng thời gian thực hiện tính toán.

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Chƣơng trình chạy thử nghiệm thuật toán với mỗi bộ số liệu:|U| là số đối tƣợng, |C| là số thuộc tính điều kiện, |R| là số thuộc tính của tập rút gọn, t là thời gian thực

hiện thuật toán đơn vị tính bằng giây. Với mỗi bộ số liệu sẽ tiến hành đo đạc 5

Một phần của tài liệu NGHIÊN CỨU MỘT SỐ PHƯƠNG PHÁP RÚT GỌN THUỘC TÍNH TRONG BẢNG QUYẾT ĐỊNH KHÔNG ĐẦY ĐỦ (Trang 55 -55 )

×