• Tidak ada hasil yang ditemukan

The Construction of Strongly Optimal Linear Binary Codes with Minimum Distance of 13 and 15

N/A
N/A
Protected

Academic year: 2017

Membagikan "The Construction of Strongly Optimal Linear Binary Codes with Minimum Distance of 13 and 15"

Copied!
169
0
0

Teks penuh

(1)

KONSTRUKSI KODE LINEAR BINER OPTIMAL KUAT

BERJARAK MINIMUM 13 DAN 15

HENDRAWAN

SEKOLAH PASCASARJANA

INSTITUT PERTANIAN BOGOR

(2)

PERNYATAAN MENGENAI TESIS DAN

SUMBER INFORMASI

Dengan ini saya menyatakan bahwa tesis berjudul Konstruksi Kode Linear Biner Optimal Kuat Berjarak Minimum 13 dan 15 adalah karya saya dengan arahan dari komisi pembimbing dan belum diajukan dalam bentuk apapun kepada perguruan tinggi mana pun. Sumber informasi yang berasal atau dikutip dari karya yang diterbitkan maupun yang tidak diterbitkan dari penulis lain telah disebutkan dalam teks dan dicantumkan dalam Daftar Pustaka di bagian akhir tesis ini.

Bogor, Januari 2012

(3)

ABSTRACT

HENDRAWAN. The Construction of Strongly Optimal Linear Binary Codes with Minimum Distance of 13 and 15. Supervised by SUGI GURITMAN and NUR ALIATININGTYAS

A linear binary code of length n over is defined as subspace of . A code has three parameters that attached to it, namely length, dimension, and minimum distance. A code with length n, dimension k and minimum distance d is often called [n, k, d]-code. The main problem in algebra coding theory is optimizing one of parameters n, k and d. Given two that others were known. Based on Gilbert-Varshamov bound, if a [n, k, d]-code is exist and the code can not be expanded, we call it strongly optimal code. In this thesis, we construct strongly optimal code with minimum distance of 13 and 15. In constructing the code, we created a theorem and algorithm based on Gilbert-Varshamov bound, then we implement the algorithm to MAPLE programming language. Because of comput ational limitations, the program can only construct up to k = 9 for d = 13 and d = 15.

Keyword: binary linear codes, Gilbert-Varshamov bound, strongly optimal codes.

(4)

HENDRAWAN. Konstruksi Kode Linear Biner Optimal Kuat Berjarak Minimum 13 dan 15. Dibimbing oleh SUGI GURITMAN dan NUR ALIATININGTYAS.

Kode linear biner dengan panjang n atas didefinisikan sebagai subruang dari ruang vektor . Suatu kode mempunyai tiga parameter penting yaitu panjang kode, dimensi kode dan jarak minimum kode. Jika suatu kode dengan panjang n, berdimensi k dan jarak minimum d, maka kode tersebut dinyatakan sebagai kode [n, k, d]. Selanjutnya suatu kode dikatakan baik jika n-kecil, k-besar dan d-besar. Makna fisiknya

Media informasi, seperti sistem komunikasi dan media penyimpanan untuk data, tidak sepenuhnya reliabel. Hal ini dikarenakan bahwa pada praktiknya ada gangguan (noise) atau interferensi lainnya sehingga pesan yang dikirim berubah (terdapat galat pada pesan). Salah satu masalah dalam teori koding (coding theory) adalah untuk mendeteksi atau bahkan mengoreksi galat tersebut. Suatu kode (code) diciptakan untuk mendeteksi atau mengoreksi galat (error) akibat saluran terganggu.

, n harus kecil terkait dengan kecepatan proses enkoding dan dekoding, dan juga terkait dengan besarnya memori yang digunakan dalam proses itu, k harus besar terkait dengan banyaknya pesan yang dapat diubah menjadi katakode, d harus besar terkait dengan banyaknya galat yang dapat dikoreksi.

Dari masalah tersebut, akan dikonstruksi kode-kode optimal kuat, yaitu kode dengan parameter [n, k, d] dengan syarat tidak ada kode-kode dengan parameter [n+1, k+1, d]. Untuk mencapai hal tersebut, perlu dilakukan beberapa hal sebagai berikut, yang selanjutnya menjadi tujuan dari penelitian ini.

1. Mengkaji teorema yang terkait dengan konstruksi kode linear, terutama Gilbert-Varshamov bound.

2. Mengonstruksi kode linear biner optimal kuat dengan jarak minimum 13 dan 15.

Setelah dipelajari secara mendalam teorema Gilbert-Varshamov, diturunkan teorema konstruksi sebagai berikut.

Jika matriks B berukuran k r dikonstruksi berdasarkan sifat sebagai berikut. 1. Semua vektor baris dari B berbeda, dan

2. Jumlah setiap i vektor baris dari B berbobot paling sedikit (d i) untuk i = 2,3,….s, dimana s = min {d 1, k}, dan (d 1) r,

maka

dan

secara berturut-turut merupakan matriks cek paritas dan matriks generator untuk kode linear C dengan parameter [k + r, k, d].

Untuk mengonstruksi kode optimal kuat dengan jarak minimum 13 dan 15 digunakan paket program konstruksi yang mengacu pada tesis yang ditulis oleh Putranto HU (2011). Program-program yang digunakan: Program Aritmetik Aljabar Matriks Biner dan Program Pelacakan Kode Optimal Kuat.

(

T | r

)

(5)

k = 9, r = 25 untuk d = 13 dan sampai k = 9, r = 28 untuk d = 15, sedangkan hasil utama, yaitu untuk memperbaiki batas bawah tabel Brower gagal dicapai. Hal ini disebabkan antara lain oleh:

1. Pemilihan kode dasar (matriks awal) yang kurang baik. 2. Program konstruksi yang masih belum sempurna.

Dalam tesis ini, masih banyak kekurangan yang ada di dalamnya, diantaranya adalah:

1. Tidak semua kode linear optimal kuat dapat di konstruksi, walaupun kode tersebut ada (telah dikonstruksi oleh orang lain).

2. Algoritme konstruksi, walaupun untuk representasi himpunan sudah cukup baik, masih dapat diperbaiki dalam hal kecepatan pelacakan kode-kode linear biner, terutama untuk dimensi yang cukup besar.

Untuk ke depannya, dapat diperbaiki algoritme konstruksi sehingga dapat mencari/melacak kode dengan lebih cepat dan dapat mencakup kode linear yang memiliki dimensi yang besar. Selain itu, dapat pula dikembangkan program untuk mengoleksi kode-kode atas , untuk .

Kata Kunci : kode linear biner, Gilbert-Vashamov Bound, kode optimal kuat. B

(6)

© Hak Cipta milik IPB, tahun 2012

Hak Cipta dilindungi Undang-undang

Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan atau menyebutkan sumbernya. Pengutipan hanya untuk kepentingan pendidikan, penelitian, penulisan karya ilmiah, penyusunan laporan, penulisan kritik, atau tinjauan suatu masalah; dan pengutipan tersebut tidak merugikan kepentingan yang wajar IPB

(7)

KONSTRUKSI KODE LINEAR BINER OPTIMAL KUAT

BERJARAK MINIMUM 13 DAN 15

HENDRAWAN

Tesis

sebagai salah satu syarat untuk memperoleh gelar Magister Sains pada

Program Studi Matematika Terapan

SEKOLAH PASCASARJANA

INSTITUT PERTANIAN BOGOR

(8)
(9)

Minimum 13 Dan 15

Nama : Hendrawan

NRP : G551090301

Disetujui Komisi Pembimbing

Ketua Dr. Sugi Guritman

Anggota

Dra. Nur Aliatiningtyas, M.Si.

Diketahui

Ketua Program Studi Matematika Terapan

Dekan Sekolah Pascasarjana

Dr. Ir. Endar H. Nugrahani, M.S. Dr. Ir. Dahrul Syah, M.Sc.Agr.

(10)

Ku persembahkan karya tulis ini untuk:

Kedua orang tuaku

(11)

PRAKATA

Puji dan syukur penulis panjatkan kepada Allah SWT atas segala karunia dan kasih sayang-Nya sehingga karya ilmiah ini berhasil diselesaikan. Tema yang dipilih dalam penelitian yang dilaksanakan sejak bulan Januari 2011 ini adalah Konstruksi Kode Linear Biner Optimal Kuat Berjarak Minimum 13 dan 15.

Ungkapan terima kasih yang setulusnya penulis sampaikan kepada Kementerian Departemen Agama Republik Indonesia, selaku sponsor bea siswa yang telah membantu semua biaya pendidikan S2 kepada penulis, Bapak Dr. Sugi Guritman dan Ibu Dra. Nur Aliatiningtyas, M.Si. selaku pembimbing,

Ibu Dr. Ir. Sri Nurdiati, M.Sc. selaku penguji luar komisi, Ibu Dr. Ir. Endar H. Nugrahani, M.S. selaku ketua program studi matematika terapan, Kepala MTs Al-Khairiyah Kamasan, yang telah memberikan izin tugas belajar. Ungkapan terima kasih juga disampaikan kepada ayah, ibu, istriku, anakku dan seluruh keluarga besarku, rekan-rekan mahasiswa Matematika Terapan angkatan tahun 2009, rekan-rekan guru MTs. Al Khairiyah Kamasan dan Staf, atas segala bantuan, motivasi, doa, serta kasih sayangnya. Tidak lupa ucapan terima kasih penulis sampaikan juga kepada semua pihak yang telah turut membantu dalam penulisan tesis ini.

Penulis menyadari bahwa dalam tulisan ini masih jauh dari sempurna, oleh sebab itu mohon masukan dan kritikan yang membangun demi kesempurnaan dimasa mendatang. Akhirnya, semoga karya ilmiah ini bermanfaat.

(12)

Penulis dilahirkan di Musirawas pada tanggal 10 Juli 1969 dari ayah Sa’ari dan ibu Djumrak. Penulis merupakan putra ketiga dari enam bersaudara.

Tahun 1988 penulis lulus dari SMA Negeri Tugumulyo Program IPA dan melanjutkan ke Fakultas Tarbiyah Jurusan Tadris Matematika IAIN Raden Fatah Palembang dan lulus pada tahun 1993.

Pada tahun 1997 penulis diterima sebagai pegawai negeri sipil (PNS) di lingkungan Departemen Agama dan ditugaskan mengajar matematika di MTs Negeri Anyer Kabupaten Serang sampai tahun 2006 kemudian dimutasikan ke MTs Al-Khairiyah Kamasan sampai sekarang.

(13)

Halaman

DAFTAR TABEL ... xiv

DAFTAR GAMBAR ... xvi

DAFTAR LAMPIRAN ... xvii

BAB. I PENDAHULUAN ... 1

Latar Belakang Masalah ... 1

Tujuan Penelitian ... 3

BAB. II LANDASAN TEORI ... 4

Definisi Sistem Persamaan Linear (SPL) ... 4

Definisi Matriks ... 4

Definisi Field ... 5

Definisi Ruang Vektor ... 6

Definisi Subruang (subspace) ... ` 6

Definisi Kombinasi Linear ... 7

Definisi Bebas Linear dan Terpaut Linear ... 7

Definisi Perentang / Span ... 7

Definisi Basis ... 8

Definisi Dimensi ... 8

Definisi Ruang Baris dan Ruang Kolom ... 8

Definisi Rank ... 8

Definisi Produk dalam standar (.) pada ... 8

Definisi Komplemen Ortogonal ... 9

Definisi Kode Linear ... 9

Definisi Kode Dual ... 10

Definisi Jarak Haming (Hamming distance) ... 10

Definisi Jarak Minimum suatu kode ... 10

Parameter Kode Linear ... 10

Definisi Bobot Hamming ... 11

Definisi Bobot Minimum Hamming ... 11

Definisi Matriks Generator dan Matriks Cek Paritas ... 11

Bentuk standar dari Matriks Cek Paritas H dan Matriks Generator G ... 12

Definisi Ekivalensi Kode Linear ………... 12

Model Aljabar Kode Linear Biner ……… 13

Pengertian Matriks Cek Paritas ... 15

Dasar-dasar Konstruksi Kode ... 17

BAB. III METODE ... 18

Formulasi Masalah ... 18

Metodologi ... 19

(14)

Kajian Teori ... 21

Membahas Aritmetik Aljabar Matriks ... 24

Program-program Aritmetik Aljabar Matriks Biner ... 25

Program-program Pelacakan Kode Optimal Kuat ... ` 27

Algoritme Konstruksi Kode Optimal Kuat ... 29

Konstruksi Kode Optimal Kuat dengan Jarak Minimum 13 dan 15 ... 33

1. Konstruksi Kode [20, 2, 13] ... 33

2. Konstruksi Kode [24, 3, 13] ... 33

3. Konstruksi Kode [27, 5, 13] ... 34

4. Konstruksi Kode [29, 6, 13]... 35

5. Konstruksi Kode [32, 8, 13]... 35

6. Konstruksi Kode [34, 9, 13] ... 36

7. Konstruksi Kode [23, 2, 15] ... 37

8. Konstruksi Kode [27, 3, 15] ... 38

9. Konstruksi Kode [31, 6, 15] ... 38

10.Konstruksi Kode [35, 8, 15]... 39

11.Konstruksi Kode [37, 9, 15]... 40

BAB. V KESIMPULAN DAN SARAN ... 42

Kesimpulan ... 42

Saran ... 43

DAFTAR PUSTAKA ... 44

(15)

Halaman

1. Contoh pendefinisian pesan menjadi katakode ... 14

2. Program dan Prosedur untuk Meningkatkan Dimensi dari Matriks dasar ... 32

3. Hasil Eksplorasi Kode Optimal Kuat dengan Jarak Minimum d = 13 ... 33

4. Hasil Eksplorasi Kode Optimal Kuat dengan Jarak Minimum d = 15 ... 37

DAFTAR GAMBAR

Halaman 1. Contoh proses enkoding dan dekoding dari suatu pesan... 2

DAFTAR LAMPIRAN

Halaman A.Tabel Brouwer Yang Berkaitan dengan d = 13 dan d = 15 ... 45

B. Program Aritmetik Aljabar Matriks Biner ... 46

C. Program Pelacakan kode Optimal Kuat... 51

(16)
(17)

PENDAHULUAN

Latar Belakang Masalah

Media informasi, seperti sistem komunikasi dan media penyimpanan untuk data, tidak sepenuhnya reliabel. Hal ini dikarenakan bahwa pada praktiknya ada gangguan (noise) atau interferensi lainnya sehingga pesan yang dikirim berubah (terdapat galat pada pesan). Salah satu masalah dalam teori koding (coding theory) adalah bagaimana cara untuk mendeteksi atau bahkan mengoreksi galat tersebut.

Pada tahun 1948 C.E. Shannon dalam artikelnya yang berjudul

A Mathematical Theory of Communication, menggambarkan tentang problem

dalam teori informasi adalah sebagai berikut. Apabila suatu pesan (informasi)

dikirim melalui saluran terganggu (noisy channel), sering kali terjadi bahwa pesan yang diterima tidak sama dengan yang dikirim. Sebagai contoh pesan yang berupa suara atau gambar menjadi tidak jelas. Problem dalam teori informasi inilah yang menjadi dasar berkembangnya teori koding.

(18)

maka galat itu bisa dipulihkan lagi oleh dekoder. Dekoder merupakan perangkat

yang mengubah barisan simbol yang diterima menjadi katakode yang selanjutnya dipulihkan menjadi pesan yang asli. Untuk menciptakan sistem komunikasi yang bebas error sangat diperlukan sekali teori koding. Proses koding dari suatu pesan dapat digambarkan sebagai berikut.

pesan

100

100

pesan

katakode 100101

100101

gangguan

110101

katakode

kirim

kirim

galat 1 bit

dekoding

enkoding

Gambar 1. Contoh proses enkoding dan dekoding dari suatu pesan

Ilustrasi praktek dari Gambar 1 diberikan sebagai berikut. Suatu pesan dengan simbol 100 akan dikirim, maka terlebih dahulu pesan tersebut oleh enkoder diubah menjadi katakode yaitu dengan cara menambahkan simbol ekstra

101 pada simbol pesan. Ini berarti 100 menjadi input dari enkoder, selanjutnya diubah menjadi katakode 100101. Katakode inilah yang kemudian dikirim melalui saluran yang di asumsikan mengalami gangguan sehingga terjadi galat sebanyak 1 bit dan pesan yang diterima menjadi 110101. Dekoder akan mendeteksi galat dan mengoreksi menjadi katakode yang mendefinisikan pesan aslinya.

Secara umum, tujuan dari teori koding adalah untuk mengonstruksi suatu kode (enkoder dan dekoder) sehingga

1. Dapat meng-enkodesuatu pesan dengan cepat.

2. Dapat mentransmisi pesan yang sudah di-enkode dengan mudah. 3. Dapat men-dekode suatu pesan yang diterima dengan cepat.

4. Dapat memaksimumkan informasi yang ditransfer per satuan waktu. 5. Dapat secara maksimal dalam mendeteksi dan mengoreksi

(19)

Tujuan Penelitian

Berdasarkan latar belakang yang dipaparkan di atas, maka tujuan dari penelitian ini adalah:

1. Mengkaji teorema yang terkait dengan kontruksi kode linear, terutama

Gilbert-Vashamov bound.

2. Mengonstruksi kode linear biner optimal kuat dengan jarak minimum 13 dan 15.

(20)
(21)
(22)

BAB II

LANDASAN TEORI

Sebagai acuan penulisan penelitian ini diperlukan beberapa pengertian dan teori yang berkaitan dengan pembahasan. Dalam sub bab ini akan diberikan beberapa landasan teori berupa pengertian, definisi, proposisi dan teorema yang berkaitan dengan pembahasan.

Definisi Sistem Persamaan Linear (SPL)

Sistem Persamaan Linear (SPL) m n adalah m persamaan linear dengan n

variabel (peubah). Bentuk umumnya adalah sebagai berikut: + + + =

+ + + =

+ + + =

dengan dan berupa konstanta, i = 1, 2, , m; j = 1, 2, , n,

sedangkan merupakan variabel yang ingin ditentukan nilainya. Nilai

disebut koefisien pada persamaan ke-i.

Suatu sistem persamaan linear dengan bentuk = = = = 0

disebut SPL homogen. Bentuk umum dari SPL homogen adalah sebagai berikut: + + + = 0

+ + + = 0

+ + + = 0

(Gunawan Santosa R. 2009)

Definisi Matriks

(23)

X =

Unsur matriks yang disimbolkan dengan dimana i = 1, 2, , m dan

j = 1, 2, , n, dibaca sebagai unsur matriks X pada baris ke-i dan kolom ke-j. (Gunawan Santosa R. 2009)

Definisi Field

Suatu himpunan yang padanya didefinisikan operasi jumlah (+) dan

operasi kali (.) disebut field, notasi , jika memenuhi sifat-sifat berikut,

1. merupakan grup komutatif terhadap +, yaitu memenuhi sifat-sifat: a. Asosiatif: ( , , ) ( + ) + = + ( + ),

b. mempunyai unsur identitas: ( 0 ) ( ) 0 + = + 0 = ,

c. Setiap unsur dari mempunyai invers: ( ) ( ) + = + = 0, dalam hal ini = ( ), dan

d. komutatif: ( ) .

2. , dimana = , merupakan grup komutatif terhadap ., bersifat:

a. asosiatif: ( ) ( ) ,

b. mempunyai unsur identitas: ( ) ( ) 1. .1 = ,

c. setiap unsur dari mempunyai invers: ( ) ( )

, dalam hal ini dinotasikan ), dan d. komutatif: ( ) .

3. Berlaku sifat distributif . terhadap + : ( )

atau ( )

(Sugi Guritman 2005) Contoh field takhingga diantaranya adalah: himpunan bilangan real, himpunan bilangan kompleks, sedangkan contoh dari field berhingga diantaranya

adalah = {0,1, 2,…, ( 1)} dengan operasi jumlah dan kali modulo , dimana

bilangan prima. Jadi adalah contoh field berhingga dengan anggotanya

(24)

Definisi Ruang Vektor

Diberikan sembarang himpunan dan sembarang field . Pada

didefinisikan aturan jumlah dan aturan perkalian dengan skalar. Himpunan disebut ruang vektor atas jika terhadap aturan-aturan tersebut memenuhi 10 aksioma-aksioma berikut.

1. ( u, v )( w ) u + v = w.

2. ( u, v, w ) (u + v) + w = u + (v + w). 3. ( 0 )( u ) 0 + u = u + 0 = u.

4. ( u ) ( v ) u + v = v + u = 0, dalam hal ini v = u. 5. ( u, v ) u + v = v + u.

6. ( k , u )( v ) ku = v.

7. ( k , u, v ) k(u + v) = ku + kv. 8. ( k, l , u ) (k + l) u = ku + lu.

9. ( k, l , u ) (kl)u = k(lu).

10.( u ) 1u = u dimana 1 adalah unsur identitas dari terhadap operasi kali.

(Sugi Guritman 2005) Unsur-unsur dari dalam hal ini merupakan skalar, sedangkan unsur-unsur

dari disebut dengan vektor.

Sebagai contoh: misalkan merupakan himpunan dari pasangan terurut

dengan panjang n yang unsur-unsurnya merupakan elemen dari , yaitu =

{( , ,…, ) }. Misalkan pula v = , w =

, dan . Operasi Penjumlahan di didefinisikan

sebagai v + w = . Sedangkan perkalian

dengan skalar didefinisikan sebagai .v = . Maka

merupakan ruang vektor.

Definisi Subruang (Subspace)

Misalkan adalah ruang vektor atas skalar dan . Himpunan

disebut subruang dari jika juga merupakan ruang vektor atas terhadap

(25)

Teorema 1

Misalkan adalah ruang vektor atas skalar dan , maka tiga proposisi berikut ini ekivalen.

(i) subruang dari .

(ii) Berlaku dua sifat berikut ini:

(a) ( , ) + , dan

(b) ( k , w ) kw .

(iii) ( k, l , , ) k + l .

(Sugi Guritman 2005)

Definisi Kombinasi Linear

Misalkan adalah ruang vektor atas skalar . Diberikan himpunan

= { , ,…, } terdiri atas n vektor dalam . Suatu vektor v disebut

kombinasi linear dari jika ( , , …, ) sehingga v = . (Sugi Guritman 2005)

Definisi Bebas Linear dan Terpaut linear

Misalkan adalah ruang vektor atas skalar , dan misalkan = adalah himpunan yang terdiri atas n vektor dalam . disebut

bebas linear jika memenuhi persamaan berikut

( i I = {1,2,…,n} = 0).

Ingkarannya, disebut terpaut linear jika

( j I = {1,2,…, n} 0).

(Sugi Guritman 2005)

Definisi Perentang / Span

Jika S = adalah vektor-vektor di dalam ruang vektor dan

jika tiap-tiap vektor di dalam dapat dinyatakan sebagai kombinasi linear dari S, maka dikatakan bahwa vektor-vektor S merentang (spanning) .

Jika = , maka S disebut himpunan perentang . Dan dikatakan direntang oleh S.

(26)

Definisi Basis

Jika adalah sembarang ruang vektor dan S = { } adalah

sebuah himpunan berhingga dari vektor-vektor di dalam , maka S dinamakan sebuah basis untuk jika:

1. S bebas linear.

2. S merentang .

(Gunawan Santosa R. 2009)

Definisi Dimensi

Dimensi dari sebuah ruang vektor didefinisikan sebagai banyaknya vektor-vektor dari basis di .

(Gunawan Santosa R. 2009)

Definisi Ruang Baris dan Ruang Kolom

Jika diketahui matriks A berukuran m n, maka subruang yang direntang oleh vektor-vektor baris dinamakan ruang baris (row space) dari A.

Sedangkan subruang yang direntang oleh vektor-vektor kolom dinamakan

ruang kolom (column space) dari A.

(Gunawan Santosa R. 2009)

Definisi Rank

Dimensi ruang baris atau ruang kolom dari matriks A dinamakan rankdari matriks A.

(Gunawan Santosa R. 2009)

Definisi Produk dalam

Misalkan adalah ruang vektor atas skalar , misalkan x, y

sembarang. Operasi biner dari x dan y bernilai dalam , dinotasikan , disebut

produk dalam (inner product) jika memenuhi sifat-sifat berikut. Untuk setiap

x, y, z dan k, l berlaku:

1. Simetrik: =

(27)

3. Positifitas: 0 dan = 0jhj x = 0.

(Sugi Guritman 2005)

Sebagai contoh: misalkan x = { } dan y = { } . Produk dalam baku dari x dan y didefinisikan sebagai berikut

= x.y = .

Definisi Ortogonal

Dua vektor x dan y di dalam ruang vektor dikatakan ortogonal,

dinotasikan x y, jika = 0.

(Sugi Guritman 2005)

Definisi Komplemen Ortogonal

Misalkan adalah ruang vektor dan S . Komplemenortogonal(disebut

juga dual) dari S, notasi , didefinisikan sebagai

= .

(Sugi Guritman 2005)

Sebagai contoh: misalkan v = , w = ; v, w .

i. Vektor v & w dikatakan saling tegak lurus (orthogonal) jika

v.w = 0

ii. Misalkan S merupakan himpunan bagian dari . Komplemen

orthogonal dari S, notasi didefinisikan sebagai

= . Jika S = , maka = .

Jika S merupakan subruang dari ruang vektor , maka merupakan subruang

dari ruang vektor dan = .

(Ling & Xing, 2004)

Definisi Kode Linear

Misalkan diberikan field berhingga Fq. Misalkan pula n q

F merupakan

himpunan dari vektor-vektor atas Fq dengan panjang n. Kode linear C

didefinisikan sebagai subruang dari ruang vektor n q F .

(28)

Definisi Kode Dual

Misalkan C merupakan kode linear atas , maka Kode dual (dual code)

dari C, notasi , adalah komplemenorthogonal dari C.

Teorema 2

Misal C adalah kode linear atas dengan panjang n dan dimensi k, maka :

i. = dim ( C ) =

ii. juga merupakan suatu kode linear dan dim (C ) + dim = n iii. = C

Dengan demikian jika C berdimensi k, maka berdimensi r = nk .

(Ling & Xing, 2004)

Definisi Jarak Hamming (Hamming distance)

Diberikan ruang vektor atas lapangan . Misalkan pula x dan y adalah

anggota dari (x, y ). Jarak Hamming antara x dan y yang dinotasikan

dengan d x y

(

,

)

, didefinisikan sebagai berikut.

(

,

)

(

1, 1

)

(

2, 2

)

...

(

n, n

)

d x y =d x y +d x y + d x y , dengan

(

,

)

1

0

i i

i i

i i

x y d x y

x y

≠ 

=  =

 .

(Ling & Xing, 2004)

Definisi Jarak Minimum suatu kode (Minimum distance of a code)

Misalkan C adalah kode linear yang memiliki kata kode lebih dari satu.

Jarak minimum untuk C, yang dinotasikan d C

( )

, didefinisikan sebagai

( )

min

{

(

,

)

| , ,

}

d C = d x y x yC xy .

(Ling & Xing, 2004)

Parameter Kode Linear

Kode linear C dengan panjang n dan berdimensi k disebut dengan kode linear dengan parameter [n, k]. Jika jarak minimum d dari C diketahui, maka C

(29)

Untuk selanjutnya, jika parameter dari suatu kode tidak ditekankan, cukup

disebutkan bahwa C adalah suatu kode linear. Anggota dari C disebut dengan kata kode.

(Ling & Xing, 2004)

Definisi Bobot Hamming (Hamming weight)

Diberikan ruang vektor . Misalkan pula x . Bobot Hamming

(Hamming Distance), yang dinotasikan wt(x) didefinisikan sebagai jumlah koordinat/unsur yang tak nol:

Wt(x) = d(x, 0) dengan 0 adalah vektor nol atau dapat pula didefnisikan sebagai berikut.

1 jika 0 ( ) ( , 0)

0 jika 0

x wt x d x

x ≠ 

= = 

=

 .

Lema 1.

Diberikan ruang vektor . Misalkan x, y , maka d(x, y) = wt(x y).

(Ling & Xing, 2004)

Definisi Bobot Minimum Hamming

Diberikan kode linear C. Minimum Hamming weight (Bobot minimal

Hamming) dari C, dinotasikan wt C

( )

, didefinisikan sebagai bobot terkecil dari

kata kode tak nol dari C .

Teorema 3

Misalkan C adalah suatu kode linear, maka d C

( )

=wt C

( )

.

(Ling & Xing, 2004)

Definisi Matriks Generator dan Matriks Cek Paritas

i. G dikatakan matriks generator bagi kode C jika baris-barisnya merupakan basis untuk C.

ii. H dikatakan matriks cek paritas dari kode C jika H merupakan

matriks generator bagi kode dual .

(30)

Bentuk Standar dari Matriks Cek Paritas H dan Matriks Generator G

Diberikan kode linear C. Misalkan H dan G, secara berturut-turut adalah matrik cek paritas dan matrik generator untuk kode linear C.

i. Bentuk standar untuk matriks generator G adalah

(

Ik|X

)

, dengan

Matriks identitas berukuran k

I = k×k.

ii. Bentuk standar untuk matriks cek paritas H adalah

(

Y I| n k

)

, dengan In k− = Matriks identitas berukuran

(

n− × −k

) (

n k

)

.

(Ling & Xing, 2004)

Teorema 4

Misalkan H adalah suatu matriks cek paritas bagi kode linear C, maka i. C memiliki jarak minimum ≥ d jika dan hanya jika d – 1 kolom

dari H saling bebas linear.

ii. C memiliki jarak minimum ≤d jika dan hanya jika d kolom dari H saling tidak bebas linear.

(Ling & Xing, 2004)

Teorema 5

Jika G = adalah bentuk standar dari matriks generator untuk suatu kode C dengan parameter [n, k], maka matriks cek paritas untuk kode C adalah

H = .

(Ling & Xing, 2004)

Definisi Ekivalensi dari Kode Linear

Misalkan diberikan sembarang kode linear C1 dan C2. C1 dan C2dikatakan

ekivalen jika salah satunya dapat diperoleh dari kode yang lain dengan cara mengkombinasikan operasi-operasi sebagai berikut.

i. Mempermutasikan digit-digit yang ada di kata kode tersebut. ii. Mengalikan posisi tertentu dengan skalar.

(31)

Model Aljabar Kode Linear Biner.

Jika menotasikan ruang vektor standar berdimensi n atas dasar field

biner = {0,1}. Maka definisi Bobot (Hamming weight) dari suatu vektor

x adalah banyaknya simbol tak nol dalam x dan dinotasikan “ ฀t (x) “ .

Definisi Jarak (Hamming distance) antara dua vektor x,y adalah banyaknya posisi digit dari x dan y dimana simbol mereka berbeda dan dinotasikan “ d(x,y) “,

jelas bahwa d(x,y) = ฀t(x + y). Sebagai contoh, di dalam ruang vektor , jika

x = 110001 dan y = 101010, maka:

d(x,y) = ฀t(110001 + 101010) = ฀t (011011) = 4

Dalam praktek, pengertian tersebut terkait dengan makna fisik sebagai

berikut. Jika pesan x akan dikirim dan berubah menjadi y saat diterima, maka

d(x,y) merepresentasikan banyaknya galat yang terjadi. d(x,y) = 0 berarti tidak terjadi kesalahan saat pengiriman.

Dari definisi kode di atas dapat disimpulkan bahwa suatu kode linear biner

dengan panjang n merupakan subruang C dari ruang vektor . Anggota suatu kode disebut dengan katakode (codeword). Mengonstruksi suatu kode bukan suatu hal yang sederhana karena harus mempertimbangkan makna praktek yang dijelaskan sebagai berikut.

Kode merupakan representasi dari himpunan semua pesan. Artinya satu

katakode mewakili satu pesan. Kode diciptakan untuk melindungi (koreksi atau deteksi) pesan dari kesalahan saat pengiriman. Dengan demikian di dalam setiap

bitstring katakode harus mengandung dua makna, yaitu simbol pesan dan simbol cek. Simbol pesan telah diketahui (diberikan) sebagai bentuk biner dari pesan,

sedangkan simbol cek merupakan simbol ekstra yang ditempelkan pada pesan. Biasanya nilai simbol cek bergantung pada simbol pesan. Berikut ini diberikan ilustrasi bagaimana mengonstruksi suatu kode berdasarkan persamaan aljabar.

Contoh 1: Definisikan suatu kode C dengan panjang 6 di dalam ruang dengan syarat : x = C jika dan hanya jika simbol pesan dan

simbol cek yang memenuhi persamaan : = +

= + +

(32)

Karena simbol pesan berukuran 3 bit, maka himpunan semua simbol pesan

adalah

= {000, 001, 010, 011, 100, 101, 110, 111}

Jika = 011 , berarti = 0, = 1 dan = 1, maka = 1 + 0 = 1, = 0 + 1 + 1 = 0, dan = 1 + 1 = 0, sehingga 011100 C.

Secara lengkap pendefinisian C diberikan dalam tabel berikut : Tabel 1 Contoh pendefinisian pesan menjadi katakode

Simbol Pesan Katakode

000 001 010 011 100 101 110 111

000000 001111 010011 011100 100110 101001 110101 111010

Jadi C = {000000, 001111, 010011, 011100, 100110, 101001, 110101, 111010} . Ilustrasi praktek dari contoh di atas diberikan sebagai berikut. Suatu pesan 110 akan dikirim, maka pesan itu terlebih dahulu harus diubah (dienkoding) menjadi kata kode. Ini berarti 110 menjadi input dari enkoder. Dan enkoder

(33)

Pengertian Matriks Cek Paritas

Suatu matriks H berukuran r x n yang semua barisnya merupakan suatu basis untuk disebut matriks cek paritas (parity check matrix) dari C. Pengertian matriks paritas ini berimplikasi pada pendefinisian kode linear yang berkaitan dengan cara konstruksi seperti pada contoh 1 diatas, yaitu :

C = {x H = 0}

Dengan kata lain, C adalah himpunan solusi dari SPL H = 0 (disebut dengan kernel H). Mengkonstruksi (membuat) kode linear dengan panjang n dan berdimensi k sama artinya dengan mendefinisikan matriks cek paritas seperti yang dimaksud di atas. Disamping itu matriks cek paritas berfungsi mengubah pesan menjadi katakode, dengan kata lain ia merupakan parameter didalam enkoding. Enkoding kode linear dengan menggunakan matriks paritas H di ilustrasikan sebagai berikut.

Diberikan blok simbol pesan dengan panjang k, misalnya u = …. , akan dienkode menjadi kata kode x = ……. dimana n k dengan

menggunakan matriks cek paritas H yang telah didefinisikan sebelumnya. Maka pertama kali didefinisikan :

= , = , …….., = ,

dan diikuti dengan pendefinisian r = (nk) simbol cek , …. yang nilainya bergantung pada nilai simbol pesan. Ketergantungan ini ditentukan oleh

H dengan menyelesaikan SPL homogen berikut.

H = 0 H = (1)

Demi kemudahan penyelesaian, matriks H biasanya diberikan dalam bentuk standar, yaitu

H = ( AC ) (2)

(34)

perhitungan menggunakan aritmetik operasi modulo

Berikut ini adalah ilustrasi proses kalkulasi enkoding dengan menggunakan matriks H.

2 yang telah didefinisikan

pada .

Contoh 2: Didefinisikankan matriks cek paritas

H =

Dari ukuran H diperoleh n = 6; nk = 3, sehingga k = 3. Terlihat bahwa matriks

H mempunyai bentuk standar sama dengan

A =

Pesan u = akan dienkode menjadi x = . Hal ini dimulai dari

= ; = ; = ;

kemudian dipilih sehingga memenuhi H = 0, sehingga diperoleh Sistem Persamaan Linear (SPL)

+ + = 0;

+ + = 0; + + = 0:

dan disebut SPL cek paritas. Misalnya pesan u = 110, maka = 1, = 1, = 0, dan dari SPL diperoleh

= -1 = 1 = -1 = 1

= -1 – 1 = 1 + 1 = 0

Ini berarti H mengubah pesan u = 110 menjadi katakode x = 110110. Secara

keseluruhan, karena k = 3, maka ada = 8 pesan berbeda yang bertindak sebagai input dalam enkoding, sehingga H mendefinisikan kode C dengan anggota 8 katakode.

C = {000000, 001110, 010101, 011011, 100011, 101101, 110110, 111000}

(35)

k x n dan setiap katakode merupakan kombinasi linear dari semua vektor baris

dari G, dengan kata lain

C = Merentang ({ , , …. })

dimana { , , …. } adalah himpunan semua baris dari G.

Dasar-dasar Konstruksi Kode

Apabila suatu kode telah berhasil dikonstruksi, maka kode dengan parameter yang berbeda dapat pula dikonstruksi, berikut adalah beberapa cara untuk mendapatkan kode lain tersebut.

1. Penambahan pada matriks cek paritas

Misalkan C adalah suatu kode linear biner dengan parameter

[

n k d, ,

]

dengan beberapa kata kode nya berbobot ganjil. Dari kode tersebut akan dibentuk

kode baru ˆC dengan menambahkan bit "0" di akhir kata kode yang berbobot

genap, dan bit "1" di akhir kata kode yang berbobot ganjil.

Dengan penambahan ini, jarak tiap pasang kata kode menjadi genap. Jika jarak

minimum kode C ganjil, maka kode yang baru memiliki jarak minimum d+1, Sehingga Cˆ memiliki parameter

[

n+1, ,k d+1

]

. Secara umum, proses

penambahan simbol pada matriks cek paritas disebut sebagai exending a code

(memperluas suatu kode) .

(MacWilliams & Sloane,1981)

2. Penghapusan dengan cara menghilangkan beberapa kata kode

Misalkan kode linear biner C memiliki parameter

[

n k d, ,

]

dan memiliki

kata kode dengan bobot ganjil dan genap. Kata kode dengan bobot ganjil dapat

dihapus untuk mendapatkan kode baru dengan parameter

[

n k, −1, 'd

]

. Pada

umumnya d'>d .

(36)

BAB III

METODE

Formulasi Masalah

Jika C adalah kode linear biner yang mempunyai panjang n, berdimensi k, dan berjarak minimum d, maka C diberi nama kode-[n,k,d]. Selanjutnya C

dikatakan baik jika n-kecil, k-besar dan d-besar. Makna fisiknya

Pada penelitian ini yang dimaksud dengan kode optimal kuat (strongly optimal codes) adalah jika kode dengan parameter [n, k, d] telah berhasil dikonstruksi dan telah berhasil pula dibuktikan bahwa kode dengan parameter [n+1, k+1, d] tidak ada. Konstruksi kode yang dilakukan berlandaskan pada teorema berikut ini.

, n harus kecil terkait dengan kecepatan proses enkoding dan dekoding, dan juga terkait dengan besarnya memori yang digunakan dalam proses itu, k harus besar terkait dengan banyaknya pesan yang dapat diubah menjadi katakode, d harus besar terkait dengan banyaknya galat yang dapat dikoreksi.

Teorema 6 (The Gilbert-Varshamov bound)

Jika telah diketahui ada kode [n, k, d] yang memenuhi ketaksamaan

1 + + + + <

maka ada (dapat dikonstruksi) kode dengan parameter [ n+1, k+1, d ].

Kajian tentang teorema Gilbert-Varshamov bound cukup menarik. Bentuk

umum perbaikan teorema tersebut terakhir dilakukan oleh A. Barg dkk.. Namun penerapan per kasus kode (kode dengan nilai parameter tertentu) baik yang batas atas maupun batas bawah belum banyak dilakukan. Untuk itu pada penelitian ini dicoba penerapan teorema Gilbert-Varshamov bound untuk mengonstruksi kode optimal kuat. Konstruksi kode dalam penelitian ini dibatasi per kasus atas dasar jarak minimum d, yaitu dimulai untuk d = 13 dan d = 15. Pemilihan kasus cukup untuk d ganjil, hal ini didasarkan pada salah satu sifat kode linear yang dinyatakan sebagai berikut. Jika kode dengan parameter [n, k, d] ada untuk d ganjil, maka dapat dikonstruksi kode dengan parameter [n + 1, k, d + 1] dan setiap anggotanya berbobot genap.

(37)

Metodologi

Mengonstruksi suatu kode berarti mendefinisikan matriks cek paritas H atau matriks generator G. Selain teorema Gilbert-Vashamov Bound, berikut ini diberikan beberapa teorema yang paling berperan untuk melandasi konstruksi H.

Teorema 7 Jika H adalah matriks cek paritas dari suatu kode dengan panjang n, maka kode tersebut mempunyai dimensi (n r) jika dan hanya jika ada r kolom

dari H yang bebas linear tetapi tidak ada r + 1 kolom dari H yang bebas linear

(r adalah rank dari H).

Teorema 8 Jika H adalah matriks cek paritas dari suatu kode dengan panjang n

maka kode tersebut mempunyai jarak minimum d jika dan hanya jika setiap d – 1 kolom dari H yang bebas linear dan ada d kolom dari H yang tidak bebas linear. Teorema 9 (The Singleton bound) Jika C adalah kode dengan parameter [n, k, d]

maka (n – k) (d –1).

Berdasarkan teorema-teorema tersebut, cukup dikonstruksi bentuk standar dari matriks H yaitu H = . Untuk mempertimbangkan efisiensi komputasi

maka kita cukup mengonstruksi matriks B berukuran k x r yang memenuhi sifst-sifat:

a. Vektor-vektor dari B berbobot paling sedikit (d - 1).

b. Jumlah setiap i-vektor baris dari B berbobot paling sedikit (d - i) untuk

i = 2, 3, …..s, dimana s = min {d - 1, k}.

Pada penelitian ini dibuktikan bahwa konstruksi H dengan strategi di atas memenuhi ketiga teorema yang bersangkutan, sehingga H akan mendefinisikan kode dengan parameter [n, k, d].

Setelah kode [n, k, d] dikonstruksi langkah berikutnya adalah mendefinisikan himpunan yang beranggotakan semua vektor baris dari B dan

semua vektor sebagai hasil jumlah i-vektor baris dari B untuk i = 2,3….s, dimana

s = min {d - 1, k}. Maka jelas bahwa ⊆

.

Jika

,

maka ada vektor

x dan x yang ditambahkan ke baris matriks B untuk mendefinisikan

matriks berukuran (k + 1) x r dan matriks cek paritas

=

akan

mendefinisikan kode dengan parameter [n +1, k +1, d].

Proses ekstensi kode dari [n, k, d] ke [n + 1, k + 1, d] dilakukan tahap demi

(38)

tidak bisa diperluas lagi. Ketika diperoleh informasi bahwa telah dibuktikan

bahwa kode dengan parameter [ + 1, + 1, d] tidak ada, maka C merupakan kode optimal kuat yang telah berhasil dikonstruksi. Akan tetapi, ketika diperoleh informasi bahwa ada kode dengan parameter [ + 1, + 1, d], berarti kita telah

gagal mengkonstruksi kode optimal kuat. Dalam hal ini, kita harus melakukan rekonstruksi dengan strategi memilih kode dasar [n, k, d] yang lain yang berpeluang besar dapat diperluas menjadi kode optimal kuat C. Pemilihan kode dasar yang baik perlu adanya eksplorasi baik yang bersifat teoritik maupun komputatif. Selanjutnya, keberhasilan konstruksi kode optimal kuat C dapat digunakan sebagai kode dasar untuk diperluas menjadi kode optimal kuat berikutnya dengan strategi yang sama.

Langkah-langkah Penelitian

Dalam penelitian ini dikontruksi kode optimal kuat dengan langkah-langkah sebagai berikut:

1. Mengkaji teori yang digunakan dalam penelitian. 2. Membahas Aritmetik Aljabar Matriks dengan cara :

a. Mendefinisikan ruang vektor sebagai himpunan kuasa pada himpunan A = {0, 1, 2, ……., n – 1}n.

b. Mendefinisikan matriks sebagai daftar dari sejumlah anggota . 3. Mengkaji Algoritme prosedur untuk pelacakan kode optimal kuat.

4. Mengonstruksi kode optimal kuat dengan jarak minimum d = 13 dan

(39)

HASIL DAN PEMBAHASAN

Pada BAB IV ini dibahas tentang permasalahan sebagai berikut: Kajian Teori yang digunakan dalam penelitian, Membahas Aritmetik Aljabar Matriks, Program-program Aritmetik Aljabar Matriks Biner, Program-program Pelacakan Kode Optimal Kuat, Algoritme Konstruksi kode optimal kuat, dan Konstruksi Kode Optimal Kuat Dengan Jarak Minimum 13 dan 15.

Kajian Teori

Diberikan kode linear C dengan parameter [n, k, d]. Misalkan H merupakan

matriks cek paritas untuk C. Dari definisi matriks cekparitas

C = , atau dengan kata lain C adalah himpunan solusi dari SPL H = 0 ( C disebut dengan kernel H) . Hal ini karena baris-baris dari matriks H

merupakan basis untuk , komplemen orthogonal bagi C.

Karena kode linear C merupakan kernel dari matriks cek paritasnya, maka mengkonstruksi suatu kode linear C sama dengan mengkonstruksi matriks cek paritasnya. Berikut ini adalah teorema yang berkaitan dengan konstruksi kode

linear biner optimal kuat.

Teorema 6 (The Gilbert-Varshamov bound)

Diberikan kode linear C dengan parameter [n, k, d]. Jika ketaksamaan

1 + + + + < berlaku maka dapat dikonstruksi kode

dengan parameter [n+1, k+1, d]. Bukti :

Misal diberikan kode linear yang memiliki parameter [n, k, d]. Berdasarkan Teorema 7, ada matriks cek paritas berordo (n – k) n, yaitu H =

yang setiap d – 1 vektor dari adalah bebas linear dalam ruang

vektor . Jika ada vektor x yang bukan i kombinasi linear dari

(40)

Hal ini karena berordo (n – k ) ( k + 1) dan setiap d – 1 vektor dari

adalah bebas linear dalam ruang vektor .

Jika banyaknya kombinasi linear yang mungkin dari kolom-kolom sehingga tidak ada d – 1 kolom yang bergantung linear lebih besar atau sama

dengan jumlah vektor tak nol dalam , maka bukan matriks cek paritas untuk kode linear dengan parameter [n + 1, k + 1, d]. Banyaknya vektor-vektor tan

nol dalam yang mungkin dipilih untuk x adalah . Sedangkan

banyaknya kombinasi linear yang mungkin dari kolom-kolom adalah

+ + … + , sehingga jika ada kode linear C dengan parameter

[n, k, d], dan persamaan 1 + + + … + < berlaku, maka

dapat dikonstruksi kode baru dengan parameter [n + 1, k + 1, d] berdasarkan kode linear C tersebut.

Teorema 7

Diberikan kode linear C dengan panjang n. Jika Hadalah matriks cek paritas

dari suatu kode dengan panjang n, maka kode tersebut mempunyai dimensi (n – r) jika dan hanya jika ada r kolom dari H yang bebas linear tetapi tidak ada

r + 1 kolom dari H yang bebas linear (r adalah rank dari H).

Bukti:

Diberikan kode linear C dengan panjang n. Misalkan H adalah matriks cek paritas bagi kode linear C. Misalkan pula G adalah matriks generator bagi kode linear C. Kode linear C memiliki pangkat (n – r) jika dan hanya jika rank (G) = (n – k). [karena G adalah basis, dan banyaknya baris di G menunjukkan dimensi suatu kode]. Karena G dan H saling orthogonal, maka rank (G) = (n – r) jika dan hanya jika rank (H) = r.

Teorema 8

Diberikan kode linear C dengan panjang n. Jika H adalah matriks cek paritas dari suatu kode dengan panjang n maka kode tersebut mempunyai jarak minimum

d jika dan hanya jika setiap d – 1 kolom dari H yang bebas linear dan ada d kolom dari H yang tidak bebas linear.

(41)

Bukti :

Diberikan kode linear C dengan panjang n. Misalkan H adalah matriks cek paritas bagi kode linear C. Kode linear C berbobot minimum d jika dan hanya jika kedua sarat berikut terpenuhi

i. Ada vektor v฀ dengan wt (v) = d sehingga =

ii. untuk setiap w฀ dengan wt (w) < d. (jika = maka wC. Kontradiksi dengan fakta bahwa wt (w) < d).

Disisi lain, kedua sarat di atas (i dan ii) dapat terjadi jika dan hanya jika ada d

kolom dari H yang tidak bebas linear dan setiap d – 1 kolom dari H yang bebas linear.

Teorema 9 (The Singleton bound)

Diberikan kode linear C. Jika C adalah kode dengan parameter [n, k, d] maka (n – k) (d – 1).

Bukti :

Misal diberikan kode kode linear C dengan parameter [n, k, d], maka kode linear C memiliki matriks cek paritas H berukuran (n – k) x n, sehingga

rank (H) ≤ (n – k). Dari teorema 7, matriks H memiliki d – 1 kolom yang bebas linear. Sehingga rank (H) = (d – 1), dengan kata lain (d – 1) ≤ (d – k).

Mengonstruksi suatu kode, sama artinya dengan mengonstruksi matriks cek paritas H. Berdasarkan teorema-teorema yang telah disebutkan di landasan teori,

maka cukup dikonstruksi bentuk standar dari H, yaitu H = . Dan atas pertimbangan efisiensi komputasi, cukup dikonstruksi matriks B berukuran k r.

Dari teorema Gilbert-Vashamov diturunkan suatu teorema baru yaitu Teorema 10. Dalam tulisan ini konstruksi kode linear biner optimal kuat dilakukan atas dasar Teorema 10 berikut ini.

Teorema 10

Jika matriks B berukuran k r dikonstruksi berdasarkan sifat-sifat sebagai berikut :

1. Semua vektor baris dari B berbeda, dan

2. Jumlah setiap i vektor baris dari B berbobot paling sedikit (d – i) untuk

(42)

maka H = dan G = secara berturut-turut merupakan matriks

cek paritas dan matriks generator untuk kode linear C dengan parameter [k + r , k, ≥ d].

Bukti :

Misalkan telah dikonstruksi matriks B berukuran k r sebagaimana

disyaratkan teorema. Akan ditunjukan bahwa H = merupakan matriks cek paritas untuk kode linear C dengan parameter [k + r , k, d]. Karena H berukuran r (k + r), maka C memiliki panjang k + r. Karena

jumlah baris matriks B sama dengan k, maka kode linear C berdimensi k. Selanjutnya akan ditunjukan bahwa kode linear C memiliki jarak

minimum ≥ d. Andaikan ada v C dengan wt < d dan ditulis

v = dimana merupakan vektor pesan dengan wt = i dan adalah vektor cek dengan wt = j , maka berlaku

i + j < d d – i wt < d – i ( 1.1 ) dan

H = = + = = ( 1.2 )

Karena wt = i , dan berdasarkan sifat 2 dari Teorema 10, maka

wt d – i ( 1.3 )

Dari persamaan 1.2 diperoleh bahwa = , sehingga persamaan 1.3 ekivalen dengan wtd – i. Hal ini kontradiksi dengan persamaan 1.1. Sehingga dapat disimpulkan bahwa kode linear C memiliki jarak minimum ≥ d.

Dari Teorema 10 , mengonstruksi kode linear C [k + r , k, ≥ d] sama artinya dengan mengonstruksi matriks B yang berukuran k r yang semua baris dari B berbeda dan jumlah setiap i vektor baris dari B berbobot paling sedikit (d – i),

untuk i = 2, 3, …, s dengan s = min { d – 1 , k }, dan (d – 1) < r.

Membahas Aritmetik Aljabar Matriks

Untuk kepentingan efisiensi komputasi maka data pada penelitian ini

(43)

yang kita gunakan dalam representasi himpunan. Adapun langkah-langkah yang dilakukan dalam membangun aritmetik aljabar matriks mengacu pada tesis Putranto HU (2011).

Langkah-langkah untuk membangun aritmetik aljabar matriks adalah sebagai berikut:

a. Mendefinisikan Ruang Vektor Biner sebagai himpunan Kuasa (power set) dari = {0, 1, 2, …., n – 1}.

Dalam penelitian ini sembarang vektor biner dengan panjang n secara komputasi merupakan subhimpunan dari , sedangkan operasi jumlah dari dua vektor diartikan sebagai selisih simetrik dari dua himpunan, dan produk dalam dari dua vektor dipandang sebagai irisan dari dua

himpunan. Pada penelitian ini matriks biner Aberordo n p kita pandang

sebagai list dari sebanyak p subhimpunan dari .

b. Mendefinisikan matriks sebagai list (daftar) dari sejumlah anggota . Sebagai contoh :

* Jika A =

Ini artinya bahwa =

* B =

Artinya =

Program-program Aritmetik Aljabar Matriks Biner

Sebelum melakukan pelacakan kode optimal kuat terlebih dahulu kita membangun aritmetik aljabar matriks dengan menggunakan program-program

yang mengacu pada tesis Putranto HU (2011). Rincian program-program ada di Lampiran B.

(44)

a. AcakSet yaitu suatu program yang digunakan untuk membangkitkan vektor dalam ruang berdimensi n secara acak.

b. Addv yaitu suatu program yang digunaakan untuk menjumlahkan dua

vektor.

c. MtxSetC yaitu program untuk mendefinisikan matriks kolom biner

berordo m n secara acak, dimana m adalah ukuran vektor baris dan n

adalah banyaknya vektor kolom dalam matriks.

d. MtxSetC1 yaitu program yang mendefinisikan matriks kolom biner

berordo m n secara acak, tidak vektor kolom yang nol. Dalam hal ini

m adalah panjang vektor dan n adalah banyaknya vektor kolom dalam matriks.

e. UbahMtxCR yaitu program yang mengubah tampilan matriks kolom

ke matriks baris berukuran n m.

f. TrpsC yaitu suatu program yang digunakan untuk menentukan

transpose matriks kolom berordo m n menghasilkan matriks kolom

berordo n m.

g. TukarR yaitu suatu program yang digunakan untuk menukar baris

ke-i dan ke-j dalam matriks kolom berordo m n, dimana 0 ≤ i,

j ≤m – 1.

h. GantiB yaitu suatu program yang digunakan untuk mengganti baris

ke-j dengan bris ke-i ditambah baris ke-j dalam matriks kolom berordo

m x n, dimana 0 ≤i, j m – 1.

i. KanonC yaitu suatu program yang digunakan untuk menentukan

bentuk kanonik matriks kolom berordo m n , dimana m n.

j. AddMtx yaitu program yang digunakan untuk menjumlahkan dua

matriks.

k. DotV yaitu program untuk menentukan produk titik dari dua vektor.

l. MultMtx yaitu program untuk mengalikan matriks kolom m n

dengan matriks kolom n p.

m. InkodG yaitu program yang digunakan untuk mengkoding vektor

(45)

n. ParG yaitu program untuk menentukan vektor paritas X dari vektor

pesan P menggunakan matriks generator bentuk standar G = ,

dalam hal ini P dan B menjadi input, dan X adalah output. Vektor

C = adalah katakode dari pesan P.

o. InkodS yaitu program yang digunakan untuk mengkoding vektor

pesan P menjadi vektor katakode C menggunakan matriks generator bentuk standar G = , dalam hal ini P dan Bmenjadi input.

p. HmDist yaitu suatu program untuk menentukan jarak hamming dari

dua vektor.

q. NonZeroWt yaitu suatu program untuk menentukanbobot tak- nol

dari suatu kode yang direpresentasikan oleh matriks generator G.

Program-program Pelacakan Kode Optimal Kuat

Untuk mengonstruksi kode optimal kuat digunakan program-program

pelacakan kode optimal kuat yang mengacu pada tesis Putranto HU (2011), sedangkan rincian lengkap dari program-program ada di Lampiran C.

Program-program yang digunakan adalah sebagai berikut : 1. Diberikan matriks generator dalam bentuk standar G = . 2. Misalkan M adalah matriks representasi vektor baris dari B.

3. Menentukan list semua kombinasi j vektor dari vektor-vektor M

(representasi baris) untuk suatu nilai j=1,2,3,…..,k (dengan program

KombinM)

4. Menambah satu baris vektor v ke matriks M(representasi baris) di posisi terahir (dengan program AddVekM).

5. Menghapus baris ke-i pada matriks M (representasi kolom) dengan program DelVekM.

6. Menentukan list dari semua list kombinasi M untuk semua j=1,2,3,…..,t

dengan t = min{k,d-1}dengan program ListKombM.

7. Menguji apakah vektor x bisa ditambahkan ke M menggunakan output

(46)

8. Melacak satu vektor baris x dalam yang bisa ditambahkan ke M berlandaskan teorema Gilbert-Vashamov dengan program

Lacak1VekM. Prosedur ini menggunakan program UjiAdd1VekM.

9. Menentukan himpunan semua vektor baris x dalam yang bisa ditambahkan ke M berdasarkan teorema Gilbert-Vashamov dengan program Kolek1VekM. Prosedur ini menggunakan UjiAdd1VekM. 10.Membuang anggota output dari Kolek1VekM dan menyisakan

vektor-vektor yang menghasilkan matriks-matriks yang tidak saling ekivalen jika ditambahkan ke M dengan program ReduEkil.

11.Misalkan himpunan Hadalah output Kolek1VekM, maka setiap pasang vektor (x, y) anggota H akan menghasilkan vektor z = x + y. Agar dua vektor x dan y dapat ditambahkan langsung ke matriks M, maka z diuji dengan prosedur UjiAdd2VekM berdasarkan output ListKombM.

12.Menentukan himpunan semua pasang (x, y) dalam yang bisa ditambahkan ke M berdasarkan teorema Gilbert-Vashamov dengan program Kolek2VekM. Prosedur ini menggunakan UjiAdd2VekM.

13.Menentukan himpunan semua pasang (x, y) menggunakan data hasil sebelumnya dengan program Kolek2VekMDt.

14.Membuang anggota output Kolek2VekM dan menyisakan vektor-vektor yang menghasilkan matriks-matriks yang tidak saling ekivalen jika ditambahkan ke Mdengan program ReduEkiX.

15.Misalkan himpunan H adalah output Kolek2VekM, maka setiap 3 vektor (x, y, z) anggota H akan menghasilkan vektor w = x + y + z, agar tiga vektor x, y dan z dapat ditambahkan langsung ke matriks M,

maka W diuji dengan prosedur UjiAdd3VekM berdasarkan output

ListKombM.

16.Menentukan himpunan semua pasang (x, y, z) dalam yang dapat

ditambahkan ke M berdasarkan teorema Gilbert-Vashamov

menggunakan program Kolek3VekM. Prosedur ini menggunakan program UjiAdd3VekM.

(47)

18.Misalkan himpunan H adalah output Kolek3VekM, maka setiap 4 vektor (x, y, z, w) anggota H akan menghasilkan vektor v = w + x +

y + z, agar empat vektor x, y, z dan w dapat ditambahkan langsung ke matriks M, maka v diuji dengan prosedur UjiAdd4VekM berdasarkan output ListKombM.

19.Menentukan himpunan semua pasang (x, y, z, w) dalam yang dapat ditambahkan ke M berdasarkan teorema Gilbert-Vashamov dengan

program Kolek4VekM. Prosedur ini menggunakan UjiAdd4VekM.

20.Menentukan himpunan semua pasang (x, y, z, w) menggunakan data hasil sebelumnya dengan program Kolek4VekMDt.

21.Misalkan himpunan H adalah output Kolek4VekM, maka setiap lima vektor (x, y, z, v, w) anggota H akan menghasilkan vektor u = w + v + x + y + z, agar lima vektor x, y, z, v dan w dapat ditambahkan langsung ke matriks M, maka u diuji dengan prosedur UjiAdd5VekM

berdasarkan output ListKombM.

22.Menentukan himpunan semua pasang (x, y, z, v, w) dalam yang dapat ditambahkan ke M berdasarkan teorema Gilbert-Vashamov dengan program Kolek5VekM. Prosedur ini menggunakan UjiAdd5VekM.

23.Menentukan himpunan semua pasang (x, y, z, v, w) menggunakan hasil data sebelumnya dengan program Kolek5VekMDt.

24.Misalkan himpunan H adalah output dari Kolek(X-1)VekM, maka setiap x vektor anggota Hakan menghasilkan jumlah. Agar x vektor ini dapat ditambahkan langsung ke matriks M, maka diuji dengan prosedur

UjiAddXVekM berdasarkan output ListKombM.

25.Menentukan himpunan semua x vektor yang dapat ditambahkan ke M berdasarkan teorema Gilbert-Vashamov dengan program KolekXVekM.

Prosedur ini menggunakan UjiAddXVekM.

(48)

Algoritme Konstruksi Kode Optimal Kuat

Dalam mengonstruksi kode optimal kuat digunakan algoritme-algoritme yang mengacu pada tesis Putranto HU (2011), sedangkan rincian program konstruksi ada di Lampiran D.

Berikut ini adalah algoritme-algoritme yang digunakan:

Algoritme 1 untuk mengkonstruksi kode optimal kuat adalah sebagai berikut:

1. Masukan bentuk standar dari matriks H yaitu H =

Untuk mempertimbangkan efisiensi komputasi maka kita cukup

memasukan matriks B berukuran k r yang memenuhi sifst-sifat: a. Vektor-vektor dari B berbobot paling sedikit ( d-1 ).

b. Jumlah setiap i-vektor baris dari B berbobot paling sedikit ( d-1 ) untuk i = 2, 3, …..s, dimana s = min { d-1, k }.

2. Eksplorasi matriks B dengan cara:

a. Menambahkan beberapa matriks kolom nol pada B sesuai dengan yang diinginkan.

b. Menentukan list dari semua list kombinasi j vektor dari

vektor-vektor M (representasi baris) untuk semua j = 1, 2, 3,…, t dengan

t = min{k, d - 1}

c. Mengkoleksi semua vektor baris X dalam yang bisa ditambahkan ke Mberdasarkan teorema Gilbert-Vashamov.

3. Print salah satu kode optimal kuat hasil eksplorasi.

Dalam melakukan eksplorasi terhadap matriks B ini dilakukan secara bertahap. Pada langkah 2a matriks kolom yang ditambahkan pada B adalah matriks kolom nol dan penambahannya bisa satu kolom, dua kolom, tiga kolom, dan seterusnya tergantung dengan kebutuhan. Pada langkah 2b menentukan semua

list dari peningkatan dimensi yang dapat dilakukan maksimal sama dengan dimensi dari matriks yang akan diubah. Sebagai contoh jika matriks B yang akan ditingkatkan dimensinya berukuran k r, maka matriks B ini hanya dapat

(49)

Dimulai dengan meningkatkan satu dimensi, dua dimensi, tiga dimensi, empat dimensi, lima dimensi dan seterusnya. Adapun algoritma yang digunakan adalah sebagai berikut :

Algoritme 2 : mencari satu vektor x dalam yang dapat ditambahkan ke B

berdasarkan teorema Gilbert-Vashamov

1. Input vektor x

2. Bobot vektor x + sedemikian sehingga wt (X + ) ≥ d – 1 – i,

dengan adalah anggota dari semua kombinasi i-vektor baris di B

untuk i = 1,2,3,…t, dan t = min {d – 1, k}. 3. Jika x lulus uji lanjutkan langkah 4.

4. Print satu vektor yang dapat ditambahkan ke dalam matriks B.

Algoritme 3 : mencari dua vektor x dan y yang dapat ditambahkan ke dalam matriks B berdasarkan teorema Gilbert-Vashamov.

1. Input adalah koleksi dari himpunan satu vektor yang dapat ditambahkan ke matriks B, misalkan .

2. Jika wt ( z) > d – 2, dimana z = x + y untuk setiap x, y ฀ , maka lanjutkan langkah 3.

3. Uji bobot vektor sedemikian sehingga wtd – 2 – i,

dengan adalah anggota dari semua kombinasi i-vektor baris di B

untuk i = 1,2,3,…t, dan t = min {d – 1, k}.

4. Jika x dan y lolos uji maka lanjutkan langkah 5.

5. Print dua vektor x dan y yang dapat ditambahkan ke dalam matriks B.

Algoritme 4 : menguji apakah m + 1 vektor bisa ditambahkan ke matriks B.

1. Input adalah koleksi dari himpunan m vektor anggota yang dapat

ditambahkan ke matriks B, misalkan .

2. Misal , ฀ . Jika dan digabung memiliki m + 1 vektor yang berbeda maka selanjutnya dilakukan pengujian sebagai berikut.

a. Diuji apakah kedua vektor anggota ( ) – ( ) dapat

(50)

b. Diuji apakah kedua vektor anggota ( ) – ( ) yang jika ditambahkan dengan setiap i vektor dalam ( ), i = 1, 2, …, m-1

bisa ditambahkan ke matriks B.

3. Untuk menguji j vektor yang bisa ditambahkan ke matriks B, yaitu dengan menjumlahkan j vektor tersebut, misalkan hasil penjumlahannya adalah vektor y. Jika wt (j) > (d j) lanjutkan langkah 4.

4. Uji bobot vektor ( y + ) sedemikian sehingga wt ( y + ) ≥ d j i,

dengan adalah anggota dari semua kombinasi i vektor baris di B untuk

i = 1, 2, …, s, dan s = min {d – 1, k}.

5. Jika vektor y lolos uji, maka lanjutkan langkah 6.

6. Print m + 1 vektor yang dapat ditambahkan ke matriks B.

Berikut ini adalah program-program yang digunakan untuk meningkatkan dimensi pada matriks dasar.

Tabel 2 Program dan Prosedur untuk meningkatkan dimensi dari matriks Dasar

Untuk meningkatkan Program Prosedur

1 2 3 4 5 6

Satu dimensi Dua dimensi Tiga dimensi Empat dimensi Lima dimensi

x dimensi

Kolek1VekM

Kolek2VekM

Kolek3VekM

Kolek4VekM

Kolek5VekM

KolekXVekM

UjiAdd1VekM

UjiAdd2VekM

UjiAdd3VekM

UjiAdd4VekM

UjiAdd5VekM

(51)

Konstruksi Kode Optimal Kuat Dengan Jarak Minimum 13 dan 15

Tabel 3 Hasil Eksplorasi Kode Optimal dengan jarak minimum d = 13

Panjang (n) Dimensi (k) Jarak Minimum (d) Kode [n, k, d]

20 2 13 [20, 2, 13]

24 3 13 [24, 3, 13]

27 5 13 [27, 5, 13]

29 6 13 [29, 6, 13]

32 8 13 [32, 8, 13]

34 9 13 [34, 9, 13]

1. Konstruksi kode [20, 2, 13]

Konstruksi dimulai dari kode [20, 2, 13], yaitu dengan mendefinisikan matriks B yang berukuran 2 18 sebagai berikut

B

=

Dengan menggunakan program UbahMtxCR mengubah tampilan matriks kolom ke matriks baris M. Berikutnya untuk memastikan bahwa jarak minimum d = 13 maka di uji dengan program NonZeroWt.

2. Konstruksi kode [24, 3, 13]

Selanjutnya matriks B berordo 2 18 ini digunakan sebagai matriks dasar

untuk diperluas menjadi matriks yang berordo 3 21 dengan cara: pertama-tama kita menambahkan tiga vektor kolom nol pada matriks dasar sehingga matriks B berordo 2 21. Berikutnya kita mengubah tampilan matriks kolom ke

matriks baris M dengan program UbahMtxCR. Untuk memastikan bahwa matriks dasar memiliki jarak minimum d = 13 maka kita uji dengan program

NonZeroWt. Karena matriks dasar berdimensi dua maka kita dapat

meningkatkanya sampai maksimum dua dimensi. Selanjutnya dengan program

ListKombM mencari semua kemungkinan vektor baris X dalam yang dapat

(52)

memperhatikan relasi ekivalensi, hasil eksplorasi menunjukan minimal ada

42.875 macam yang berordo 3 21 yang mendefinisikan kode dengan parameter [24, 3. 13]. Dan dengan program ReduEki1 dihilangkan matriks-matriks yang saling ekivalen ternyata diperoleh 8 macam yang tidak saling

ekivalen, salah satunya

=

3. Konstruksi kode [27, 5, 13]

Matriks berordo 3 21 ini dijadikan matriks dasar untuk diperluas

menjadi matriks yang berordo 5 22. Caranya adalah; Pertama-tama matriks ini ditambah satu vektor kolom nol sehingga menjadi matriks dasar

yang berordo 3 22. Kemudian matriks diubah, dari tampilan matriks kolom menjadi matriks baris M dengan menggunakan program UbahMtxCR. Untuk memastikan bahwa matriks dasar memiliki jarak minimum d = 13 maka kita uji

dengan program NonZeroWt. Karena M berdimensi 3 maka kita dapat meningkatkan matriks dasar ini maksimal 3 dimensi. Dengan program

ListKombM mencari semua kemungkinan vektor baris X dalam yang dapat

ditambahkan ke M. Dengan program Kolek1VekM kita tingkatkandimensi dari

matriks dasar satu tingkat sehingga dimensinya menjadi empat, dan hasilnya terdapat minimal ada 17.496 kode dengan parameter [26, 4, 13]. Selanjutnya ditingkatkan lagi dimensinya menjadi menjadi lima dengan cara menambahkan satu lagi vektor baris X dalam ke M dengan program Kolek2VekMDt. Dari hasil eksplorasi tanpa melihat relasi ekivalensi ternyata minimal ada 39.432 macam matriks berordo 5 22 yang mendefinisikan kode dengan parameter

(53)

Gambar

Gambar 1. Contoh proses  enkoding dan dekoding dari suatu pesan
Gambar 1. Contoh proses  enkoding dan dekoding dari suatu pesan

Referensi

Dokumen terkait

Untuk lebih memfokuskan penelitian ini peneliti membatasi masalah pada sub-sub rumusan masalah sebagai berikut : (1) Bagaimana perencanaan pembelajaran keterampilan

Metode pembelajaran yang dikembangkan harus mampu mengakomodasi kecenderungan cara belajar yang mereka miliki, salah satunya melalui pendekatan Pembelajaran Berpusatkan Model

Secara teoritis Hak Asasi Manusia adalah hak yang melekat pada diri manusia yang bersifat kodrati dan fundamental sebagai suatu anugerah Allah yang harus dihormati,

Pemerintah sebetulnya bukan tidak memahami penderitaan dan tekanan kemiskinan yang dialami masyarakat desa pesisir khususnya para nelayan, salah satu program pembangunan

Menurut Sugiyono (2005:11) “penelitian deskriptif adalah penelitian yang dilakukan untuk mengetahui nilai variabel mandiri, baik satu variabel atau lebih tanpa

Pengalaman istri pasangan usia subur bukan pengguna implant yaitu tidak pernah mempunyai pengalaman dalam penggunaan implant karena informasi yang diperoleh tentang alkon implant

Penelitian ini berharap dapat menjadi rujukan untuk penelitian selanjutnya Sedangkan manfaat penelitian secara praktis adalah penelitian ini diharapkan juga bagi pembaca

Jika sebaran data yang dihasilkan pada proses TDLDA mempunyai distribusi yang tidak linier, maka salah satu metode yang digunakan SVM untuk mengklasifikasikan