• Tidak ada hasil yang ditemukan

BAB II. LANDASAN TEORI

2.3. Algoritma Arima (A Rare Itemset Miner Algorithm)

Algoritma Arima merupakan algoritma untuk mencari rare itemset.

Rare itemset adalah itemset yang muncul bersama-sama dalam sedikit

transaksi atau persentase sangat kecil pada transaksi dalam database.

Pembentukan rare itemsetdilakukan dengan mencari semua kombinasi item –

item yang memiliki support lebih kecil atau sama dengan minsup yang telah

ditentukan.

Suatu aturan asosiasi disebut rare, jika support kurang dari nilai

minimum support. Aturan asosiasi rare r adalah benar jika r adalah confident,

Minimal rare itemset (mRI) adalah suatu itemset yang sangat jarang

terjadi tetapi semuasubsetsering terjadi.

Minimal zero generator (mZG)adalah suatu itemset yang bernilai nol

dari semua subset yang bukan nol itemset(non-zero itemsets).

Gambar 2.2 Kiri : Contoh Dataset (D). Kanan : Rangkaian pola

Dataset D (Szathmary, L., et.al, 2007).

Pada gambar 2.3 digambarkan proses pencarian rare itemset dengan

nilai minsup=3. Pada C

1

atau candidate-1ada 5 itemset yang terdiri dari ({A},

{B}, {C}, {D}, dan {E}). {D} merupakan minimal rare itemset(mRI) karena

itemset ini memiliki nilai support lebih kecil dari minimum support yang

Kemudian pada C2 atau candidate-2 ada 10 itemset yang terdiri dari ({AB},

{AC}, {AD}, {AE}, {BC}, {BD}, {BE}, {CD}, {CE}, dan {DE}). {CD}

merupakan minimal zero generator (mZG) karena nilai support itemset

bernilai nol, ({AD}, {BD}, {DE}) merupakan rare itemset karena itemset ini

memiliki nilai support lebih kecil dari minimum support yang ditentukan,

({AB}, {AC}, {AE}, {BC}, {BE}, {CE}) merupakan frequent itemset. Pada

C3 atau candidate-3 ada 10 itemset yang terbentuk yaitu ({ABC}, {ABD},

{ACD}, {ACE}, {ABE}, {ADE}, {BCD}, {BCE}, {BDE}, dan {CDE}).

({ABC}, {ACE}) merupakan minimal rare itemset(mRI) karena itemset ini

memiliki nilai support lebih kecil dari minimum support yang ditentukan,

({ABD},{ADE}, {BDE}) merupakan rare itemsetkarena itemset ini memiliki

nilai support lebih kecil dari minimum support yang ditentukan, ({ACD},

{BCD}, {CDE}) merupakan rare itemsetdengan nilai support 0 dan ({ABE},

{BCE}) merupakan frequent itemset.Kemudian pada C4 atau candidate-4ada 5

itemset yang terbentuk yaitu ({ABCD}, {ACDE}, {ABCE}, {ABDE}, dan

{BCDE}). ({ABCD}, {ACDE}, {BCDE}) merupakan rare itemdengan nilai

support 0 dan ({ABCE}, {ABDE}) merupakan rare itemset. Proses ini

berhenti pada C5 atau candidate-5karena pada tahap ini tidak ada rare itemset

yang terbentuk.

Apabila diketahui :

mRI = minimal rare itemset

S = menyimpan semua atribut di dataset

i = jumlah itemset

= candidate itemsetuntuk ukuran i

= rare itemsetuntuk ukuran i

= candidate itemset

Maka pseudocode untuk pencarian rare itemset menggunakan

algoritma Arimaadalah sebagai berikut (Szathmary, L., et.al, 2007) :

Inisialisasi mZG= null

Inisialisasi S = semua atribut di dataset

Inisialisasi i = jumlah terkecil itemset di mRI

Tambahkan semua itemset terkecil di mRIke dalam

Tambahkan anggota atau nilai support = 0 ke dalam mZG

Tambahkan anggota atau nilai support > 0 ke dalam

While ( ø)

Loop over the elements of (r)

//in Cand no duplicates are allowed:

fall possible supersets of r using S;

loop over the elements of (c)

if c has a proper subset in mZG, then

delete c from ;

//i.e., if c is a superset of a min. zero gen.

//no duplicates are allowed in :

 ∪ ;

= ø; //re-initializing

SupportCount( ); //requires one database pass

 ∪{(i + 1)-long itemsets in mRI};

mZG mZG {z € | support(z) = 0};

{r € | support(r) > 0};

i i + 1;

; //(all non-zero) rare itemsets

Gambar 2.3 Algoritma Arima (A Rare Itemset Miner Algorithm)

(Szathmary, L., et.al, 2007)

Algoritma diatas dapat dijelaskan sebagai berikut :

a. Pada iterasi pertama dihitung jumlah kemunculan setiap item dalam

transaksi untuk menentukan large 1-itemset. Pada iterasi selanjutnya

akan dihasilkan candidate k-itemset menggunakan rare-itemset yang

ditemukan pada iterasi sebelumnya.

b. Setelah itu, dilakukan penelusuran data untuk menghitung support bagi

setiap candidate itemset dalam . Dalam tahap ini pastikan tidak

ada duplikat untuk . Untuk itu jika suatu data telah terdaftar di

mZGmaka data tersebut akan dihapus di dalam .

c. Kemudian akan dilakukan eliminasi minimal zero generator yang

memiliki nilaisupportsama dengan 0 dan eliminasi rare itemset yang

memiliki nilaisupportlebih besar dari 0. Sedangkan semuacandidate

k-itemset yang memenuhi minsup disimpan dalam yang akan

digunakan untuk membentuklarge (k+1)-itemset. Algoritma berakhir

ketika tidak adalarge itemsetbaru yang dihasilkan.

Algoritma Arima menggunakan arah pencarian bottom-up, dimana

arah pencarian dimulai dari rare itemset menuju itemset terpanjang.

Strategi yang digunakan adalah breadth-first search dimana proses

support-nya untuk menemukan rare itemsetpada leveltersebut. Sedangkan

strategi perhitungan nilai support dilakukan dengan horizontal counting,

dengan cara membaca transaksi satu persatu, jika ditemukan itemset yang

dicari pada transaksi tersebut maka counter bertambah satu, begitu

selanjutnya.

2.4.Contoh Penerapan Algoritma Arima (A Rare Itemset Miner Algorithm)

Berikut akan ditunjukkan cara kerja algoritma Arima untuk

menemukan rare itemset dan menemukan aturan asosiasi yang tepat dengan

minsup=3. Tabel 2.2 adalah contoh dataset yang akan digunakan untuk

menemukan aturan asosiasi langka yang terdapat pada data tersebut.

Tabel 2.2 Tabel Transaksi B (Szathmary, L., et.al, 2007)

ID Itemset

1 A, B, D, E

2 A, C

3 A, B, C, E

4 B, C, E

5 A, B, C, E

Dari tabel diatas maka proses pencarian rare itemsetdengan algoritma

Arimaadalah sebagai berikut :

mZG = ø

S = {A, B, C, D, E)

i = 1

C

1

R

1

{A} 4 {D} 1

{B} 4

{C} 4

{D} 1

{E} 4

mZG

before

= ø

mZG

after

= ø

C2 R2

Candidate 2-itemset Support Rare 2-itemset Support

{A, D} 1 {A, D} 1

{B, D} 1 {B, D} 1

{C, D} 0 {E, D} 1

{E, D} 1

mZG

before

= ø

mZG

after

= {CD}

C3 R3

Candidate 3-itemset Support Rare 3-itemset Support

{A, B, D} 1 {A, B, D} 1

{A, D, E} 1 {A, D, E} 1

{B, D, E} 1 {B, D, E} 1

{A, B, C} 2 {A, B, C} 2

{A, C, E} 2 {A, C, E} 2

mZG

before

= {CD}

mZG

after

= {CD}

C4 R4

Candidate 4-itemset Support Rare 4-itemset Support

{A, B, D, E} 1 {A, B, D, E} 1

{A, B, C, E} 2 {A, B, C, E} 2

mZG

before

= {CD}

mZG

after

= {CD}

C5 R5

Candidate 5-itemset Support Rare5-itemset Support

mZG

before

= {CD}

mZG

after

= {CD}

Gambar 2.4 Pencarian candidate itemset dan rare itemset dengan

min_supp=3

Penerapan algoritma Arima pada dataset B (Tabel 2.2) dengan

min_supp = 3 diilustrasikan pada Gambar 2.3. Algoritma pertama

mengambil mRI terkecil, {D}, yang bukannon-zeroakan disalin keR

1

.2-long

supersets dihasilkan dan disimpan di C

2

({AD}, {BD}, {CD} dan {DE}).

Karena {CD} adalah zero itemset, maka data ini disalin ke daftar mZG.

Kemudian yang Non-zero itemsets akan disalin ke R

2

. Untuk setiap rare

itemsetdi R

2

, memungkinkan supersets yang dihasilkan. Misalnya, dari {AD}

dapat menghasilkan kandidat berikut: {ABD}, {ACD}, dan {ADE}. Jika

kandidat memiliki subset mZG, maka kandidat pasti zero itemset dan dapat

dipangkas ({ACD}). Kandidat non-zero berpotensi disimpan di C

3

. Duplikat

tidak diperbolehkan dalam tabel C

i

. DarimRI 3-long itemsetsditambahkan ke

C

3

({ABC} dan {ACE}).

Algoritma berhenti jika tabel R

i

kosong. Gabungan tabelR

i

memberikan

semua non-zero rare itemsets. Pada akhirnya, semua mZGs dijadikan satu,

jadi jika diperlukan,zero itemsetsdapat dengan mudah diambil dari daftar ini.

Berdasarkan pencarian rare itemset diatas maka dapat dibuat tabel

Tabel 2.3 minimal Rare itemset (mRI)dengan minimum support= 3

minimul Rare itemset (mRI) Support

{D} 1

{ABC}, {ACE} 2

Dari contoh diatas dapat dilihat bahwa bila nilai minsup dinaikan

maka akan banyak candidate itemset yang terbentuk, sehingga

menyebabkan banyak pengulangan.

Sehingga dengan rare itemsetyang ditemukan diatas dapat diproses

sebagai berikut :

Subsetdari rare itemset: {D} ,{ABC}, {ACE}.

Dari subsetyang ada dapat dibentuk aturan asosiasi sebagai berikut :

a. A⇒B & C

c(A⇒B & C)= s(A,B,C)/sA

=2/4

=50%

b. B & C ⇒A

c(B & C ⇒A)= s(A,B,C) /s(B,C)

=2/2

=100%

c. B ⇒A & C

c(B⇒A & C )= s(A,B,C)/sB

=2/4

=50%

d. A & C ⇒B

c(A & C ⇒B)= s(A,B,C) /s(A,C)

=2/3

=75%

e. C ⇒A & B

c(C⇒A & B)= s(A,B,C)/sC

=2/4

=50%

f. A & B ⇒C

c(A & B ⇒C)= s(A,B,C) /s(A,B)

=2/3

=75%

g. A ⇒C & E

c(A⇒C & E)= s(A,B,E)/sA

=2/4

=50%

h. C & E ⇒A

c(C & E ⇒A)= s(A,C,E) /s(C, E)

=2/3

i. C⇒A & E

c(C⇒A & E)= s(A,C,E)/sC

=2/4

=50%

j. A & E⇒C

c(A & E⇒C)= s(A,C,E) /s(A,E)

=2/3

=75%

k. E⇒A & C

c(E⇒A & C)= s(A,C,E)/sE

=2/4

=50%

l. A & C⇒E

c(A & C⇒E)= s(A,C,E) /s(A,C)

=2/3

=75%

Semua aturan asosiasi yang ada ternyata mempunyai nilai

confidence ≥ 70% sehingga semua aturan asosiasi yang terbentuk diatas

27

BAB III

ANALISIS DAN PERANCANGAN SISTEM

Perancangan program aplikasi dalam skripsi ini menggunakan aturan linear

sequential (waterfall). Pada bab ini akan dibahas tahap pertama dan kedua yaitu

analisis dan definisi kebutuhan, perancangan sistem dan perangkat lunak.

Tahap-tahap yang digunakan adalah sebagai berikut

3.1. Fase Analisis Kebutuhan Sistem

Dokumen terkait