Cara Mengoreksi Error pada Telekomunikasi

Berkat kemajuan teknologi telekomunikasi, kini semua orang bisa berkomunikasi di manapun dan kapanpun dengan telepon seluler (ponsel). Namun, sebenarnya kita perlu berterima kasih kepada para ilmuwan dan insinyur telekomunikasi yang mampu menemukan teknik mengoreksi error dan mengolah sinyal. Mengapa? Karena sinyal yang diterima oleh ponsel mengandung banyak sekali kesalahan dari channel yang buruk, noise atau gangguan dan juga distorsi karena komponen yang kurang sempurna (tidak linier).

Mengapa Komunikasi Mengalami Error?

Seperti ditunjukkan pada gambar di bawah, urutan simbol {\bf S} = [a~b~c~d]^{\rm T} dari base station dikirimkan ke sebuah ponsel melewati channel dengan bobot (weight) channel h_1. Akan tetapi, saat sinyal dipantulkan oleh gedung tinggi, nilai yang diterima ponsel berubah menjadi h_2. Di sisi lain, ponsel Anda memiliki noise {\rm n} = [n_1~n_2~n_3~n_4]^{\rm T}.

Ed04-teknologi-1Kita akhirnya menerima sinyal {\bf y} dengan:

{\bf y}=Hs+x \newline

     =\begin{bmatrix} h_{1}&0&0&0\\h_{2}&h_{1}&0&0\\0&h_{2}&h_{1}&0\\0&0&h_{2}&h_{1} \end{bmatrix} \begin{bmatrix} a\\b\\c\\d \end{bmatrix} + \begin{bmatrix} n_{1}\\n_{2}\\n_{3}\\n_{4} \end{bmatrix} \newline

     =\begin{bmatrix} ah_{1}+n_{1}\\ah_{2} + bh_{1} + n_{2}\\bh_{2} + ch_{1} + n_{3}\\ch_{2} + dh_{1} + n_{4} \end{bmatrix}

Dari sini terlihat bahwa sinyal yang kita kirimkan akan sangat mudah salah karena selain oleh noise, juga terganggu oleh simbol kita sendiri. Mari kita evaluasi hal ini dalam Tabel 1. Simbol b dikirim, tetapi yang diterima adalah ah_2 + b h_1 + n_2. Artinya, selain oleh noise n_2 simbol b juga terganggu oleh simbol a. Demikian pula yang terjadi pada simbol-simbol lainnya. Simbol c terganggu oleh simbol b, simbol d terganggu oleh simbol c dan seterusnya, selain mereka pun terganggu oleh noise n_1, n_2, n_3, n_4. Ini yang disebut sebagai interferensi antarsimbol (intersymbol interference atau ISI).

Tabel 1. Contoh Perhitungan Pengiriman Sinyal Wireless.

Dikirim Diterima
A a h_1 + n_1 \newline
B a h_2 + b h_1 + n_2
C b h_2 + c h_1 + n_3
D c h_2 + d h_1 + n_4

Error Correction Coding yang Paling Sederhana

Karena banyaknya “gangguan” yang dialami oleh informasi saat dikirimkan, maka teknik koreksi error (error correction) coding menjadi “wajib” dalam dunia telekomunikasi.

Sebenarnya ada banyak sekali teknik mengoreksi error, hanya saja untuk tulisan kali ini, kita belajar teknik koreksi error yang termudah. Misalnya, informasi biner kita adalah

i = \begin{bmatrix} 0&0&1&0&1&1&1&0 \end{bmatrix}

Channel antara pengirim dan penerima menyebabkan error dengan rate error ¼, artinya terjadi satu kesalahan pada setiap 4 bit. Dengan begitu, kita menerima

\hat{i} = \begin{bmatrix} 0&0& \underline{0}&0& \underline{0}&1&1& 0 \end{bmatrix}

yaitu error = 2 bit terjadi pada bit ke-3 dan ke-5 (dengan garis bawah). Dengan demikian bit-error-rate (BER) = 2/8 = ¼ =0,25.

Sekarang mari kita perbaiki dengan repetition code, sebuah coding yang paling sederhana dengan cara mengulangi bit beberapa kali.

Misalnya, kita pakai triple repetion code sehingga informasi menjadi

0\ 0\ 1\ 0\ 1\ 1\ 1\ 0 \rightarrow \left [ {\rm Triple~Repetition~Code} \right ] \rightarrow 000\ 000\ 111\ 000\ 111\ 111\ 111\ 000

Kemudian, informasi tersebut dikirim melalui channel dengan BER = 0,25:

000\ 000\ 111\ 000\ 111\ 111\ 111\ 000 \rightarrow \left [{\rm Channel} \right ] \rightarrow 0 \underline{1}00\ 00 \underline{0}1\ 10 \underline{1}0\ 111 \underline{0}\ 1 \underline{0}11\ 10 \underline{1}0

Bit yang diterima kemudian diperbaiki oleh decoder dengan algoritma “majority decision”.

Tabel 2. Algoritma Majority Decision.

Diterima Diputuskan
000 000
001 000
010 000
011 111
100 000
101 111
110 111
111 111

Dengan demikian, informasi bisa dikoreksi menjadi

0 \underline{1}00\ 00 \underline{0}1\ 10 \underline{1}0\ 111 \underline{0}\ 1 \underline{0}11\ 10 \underline{1}0 \rightarrow 0 \underline{0}0\ 000\ \underline{1}11\ 0 \underline{0}0\ 111\ \underline{000}\ 111\ 0 \underline{0}0

Kemudian dikembalikan ke informasi aslinya menjadi

 0\ 0\ 1\ 0\ 1\ \underline{0}\ 1\ 0

Jadi, bit ke-3 bisa diperbaiki, namun bit ke-6 tetap salah sehingga sekarang error-nya adalah BER = 1/8 = 0,125.

Hikmahnya

Hikmah yang bisa kita ambil dari teknik sederhana di atas adalah:

  1. Error bisa diperbaiki jika kita berusaha
  2. Kemampuan koreksi error berdasarkan majority decision masih lemah, yaitu hanya mampu mengoreksi 1 kesalahan dalam setiap 3 bit. Jika ada 2 kesalahan dalam 3 bit, decoder tidak mampu mengoreksinya.
  3. Diperlukan teknik koreksi error yang lebih baik daripada sekedar “repetition coding”.
  4. Hikmah sosial: Ini mungkin bisa menjadi salah satu contoh bahwa jika kita melakukan voting pada suatu rapat, hasilnya akan baik jika orang-orang berilmu menjadi mayoritas di sana (orang berilmu ibarat bit yang tidak salah). Karena jika banyak yang salah, maka hasil keputusannya bisa fatal seperti yang terjadi pada bit ke-6 pada contoh di atas. Oleh karena itu, penulis berpandangan bahwa musyawarah mufakat sebaiknya didahulukan sebelum melaksanakan voting (majority decision) dalam memutuskan sesuatu.

Bahan bacaan:

  • Neubauer, J. Freudenberger, and V. Kuhn, “Coding Theory: Algorithm, Architecture and Applications”, Wiley (2007).

Penulis:
Khoirul Anwar, asisten profesor di laboratorium Information Theory and Signal Processing, Japan Advanced Institute of Science and Technology (JAIST), Jepang. Kontak: anwar-k(at)jaist(dot)ac(dot)jp.

Back To Top