• Tidak ada hasil yang ditemukan

Implementasi Algoritma Cocke -Younger-Kasami (CYK) Dan Levenshtein Untuk Merekomendasikan Perbaikan Struktur Kalimat Dan Kesalahan Pengetikkan Bahasa Indonesia

N/A
N/A
Protected

Academic year: 2017

Membagikan "Implementasi Algoritma Cocke -Younger-Kasami (CYK) Dan Levenshtein Untuk Merekomendasikan Perbaikan Struktur Kalimat Dan Kesalahan Pengetikkan Bahasa Indonesia"

Copied!
118
0
0

Teks penuh

(1)

1 1.1. Latar Belakang Masalah

Bahasa merupakan alat komunikasi lingual manusia baik secara lisan maupun tulisan. Dalam membuat suatu karya ilmiah, penggunaan Bahasa Indonesia harus sesuai dengan EYD (Ejaan yang Disempurnakan). Struktur atau pola kalimat yang disusun dari kata-kata yang dibentuk harus dapat membuat pembaca mudah mengerti maksud dari tulisan pada karya ilmiah tersebut. Kesalahan dalam pengetikkan dapat membuat kesalahpahaman para pembaca. Kesalahan struktur kalimat seperti tidak diketahui subjeknya juga dapat membuat pembaca tidak mengetahui siapa pelaku yang disebutkan dalam kalimat tersebut.

Berdasarkan sebuah penelitian [1], pemeriksaan kesalahan pengetikkan biasa dilakukan ketika tulisan telah selesai dibuat. Tidak sulit jika pemeriksaan dilakukan terhadap ukuran teks yang pendek. Apabila ukuran teks sudah mencapai lebih dari ratusan atau bahkan ribuan akan menyulitkan pemeriksaan. Dengan penerapan sebuah program, masalah tersebut dapat diatasi. Tidak hanya kesalahan kata, pemeriksaan pola kalimat dalam sebuah karya ilmiah pun perlu dilakukan.

Terdapat penelitian [2] yang telah melakukan perbaikan kata pada kesalahan pengetikkan menggunakan algoritma Levenshtein dengan mekanisme penambahan, penyisipan, dan penghapusan karakter. Algoritma Levenshtein merupakan algoritma yang digunakan untuk mencari jumlah operasi string yang paling sedikit untuk mentransformasikan suatu string menjadi string yang lain [3]. Algoritma ini menggunakan tabel dua dimensi dalam melakukan pengecekkan

string. Jumlah operasi string disebut sebagai edit distance. Edit distance diambil dari hasil akhir (baris dan kolom terakhir) pada tabel. Hasil inilah yang akan digunakan untuk melihat apakah suatu string dapat diubah menjadi string lain. Apabila hasil akhir bernilai 0, maka tidak ada yang perlu diperbaiki. Jika nilai hasil akhir lebih dari 0, maka terdapat kesalahan dalam string. Semakin kecil nilai edit

(2)

pengecekkan masih sebatas pengecekkan kesalahan pengetikkan, bukan pengecekkan pola kalimat Berbahasa Indonesia. Sehingga belum diketahui cara perbaikan pola kalimat menggunakan algoritma Levenshtein.

Pada penelitian lain [4] terdapat cara untuk mengenali pola kalimat dengan menggunakan algoritma CYK. Algoritma CYK adalah algoritma untuk menentukan apakah suatu untai dapat diterima oleh suatu tata bahasa bebas-konteks (CFG) yang sudah dinormalkan dalam bentuk Chomsky Normal Form (CNF). Pengecekkan dilakukan dengan mengelompokkan setiap kata sesuai dengan KBBI (Kamus Besar Bahasa Indonesia). Aturan-aturan pengelompokkan kata dapat dibuat dalam bentuk CNF.

Oleh karena itu dalam penelitian ini akan dilakukan implementasi dari kedua algoritma yaitu algoritma CYK dan Levenshtein untuk memperbaiki struktur kalimat dan kesalahan pengetikkan Bahasa Indonesia pada suatu karya ilmiah. Algoritma CYK digunakan untuk mengenali pola kalimat dan algoritma Levenshtein digunakan sebagai bantuan untuk memperbaiki pola kalimat dan kesalahan pengetikkan Bahasa Indonesia.

1.2. Rumusan Masalah

Berdasarkan uraian latar belakang diatas, maka rumusan masalah dari penelitian ini adalah bagaimana mengimplementasikan algoritma CYK dan Levenshtein untuk memperbaiki struktur kalimat dan kesalahan pengetikkan Bahasa Indonesia pada suatu karya ilmiah.

1.3. Maksud dan Tujuan

Adapun maksud dari penelitian ini adalah mengimplementasikan algoritma CYK dan Levenshtein ke dalam sebuah simulator perbaikan struktur kalimat dan kesalahan pengetikkan.

(3)

1.4. Batasan Masalah

Agar pembahasan menjadi lebih jelas dan terarah, maka permasalahan dibatasi terhadap masalah-masalah berikut:

1. Pemeriksaan kalimat hanya terbatas pada Bahasa Indonesia saja.

2. Aturan produksi dibuat dalam bentuk CNF agar dapat dilakukan parsing oleh algoritma CYK.

3. Kamus dan pengelompokkan kata diambil berdasarkan POS Tag Indonesia. 4. Seluruh kata dalam Bahasa Inggris akan dianggap sebagai istilah, artinya

seluruh istilah termasuk ke dalam kelompok kata nomina.

5. Kalimat yang diperiksa berupa inputan dari file dengan ekstensi .doc atau .docx 6. Pengecekkan sintaksis hanya berupa frase, klausa, dan kalimat.

7. Pengecekkan kalimat hanya berupa kalimat sederhana dan kalimat luas. 8. Pengecekkan kalimat tidak termasuk mengenali kalimat yang ambigu.

9. Data uji yang digunakan adalah dokumen abstrak skripsi dari Teknik Informatika Unikom.

10. Bahasa pemrograman yang digunakan adalah C#. 1.5. Metodologi Penelitian

Tahapan penelitian dari tugas akhir yang akan dilalui yaitu: Pengumpulan Data

Analisis

Perancangan

Implementasi

Pengujian

(4)

1. Pengumpulan Data

Tahap ini merupakan tahap awal dari penelitian. Pada tahap ini dilakukan pengumpulan data dengan menggunakan metode studi literatur dan wawancara. Pengumpulan data meliputi teori tentang Bahasa Indonesia dan sintaksisnya, algoritma CYK, algoritma Levenshtein, dan bahasa pemrograman C#.

2. Analisis

Pada tahap ini dilakukan analisis terhadap kedua algoritma yaitu CYK dan Levenshtein. Analisis dimulai dari memahami sintaksis Bahasa Indonesia, membuat bentuk CNF dari sintaksis yang sudah dianalisis, memahami cara kerja algoritma CYK dan Levenshtein, hingga menganalisis cara penggabungan kedua algoritma.

3. Perancangan

Tahap ini merupakan tahap untuk perancangan simulator yang akan dibuat berdasarkan analisis yang telah dilakukan. Pada tahap ini dilakukan perancangan diagram UML (Unified Language Model) dan perancangan antarmuka (user interface).

4. Implementasi

Tahap ini menerjemahkan hasil perancangan yang telah dibuat ke dalam bahasa pemrograman. Tools yang digunakan yaitu Visual Studio 2012 dengan bahasa pemrograman C#.

5. Pengujian

Setelah simulator dibuat maka selanjutnya melakukan pengujian algoritma melalui simulator yang telah dibuat. Pengujian dilakukan dengan memasukkan dokumen abstrak skripsi ke simulator dengan menghasilkan keluaran yaitu saran perbaikan kata dan pola kalimat.

1.6. Sistematika Penulisan

(5)

BAB I PENDAHULUAN

Bab ini berisi penjelasan tentang latar belakang masalah yang menjadi bahan penelitian, merumuskan masalah, menentukan batasan masalah, memaparkan maksud dan tujuan dari penelitian yang dilakukan, menjelaskan metodologi penelitian dan sistematika penulisan.

BAB II LANDASAN TEORI

Bab ini berisi tentang pembahasan teori sintaksis Bahasa Indonesia, mempelajari teori bahasa dan automata dengan melihat pada hirarki Chomsky, mengenal tata bahasa bebas konteks dan penyederhanaannya, penyederhanaan bentuk CNF, definisi Algoritma CYK berikut dengan cara kerjanya, definisi Algoritma Levenshtein berikut dengan cara kerjanya, pengenalan pemrograman berbasis objek, dan konsep dasar dari UML (Unified Modelling Language).

BAB III ANALISIS DAN PERANCANGAN

Pada bab ini dibahas mengenai kebutuhan algoritma CYK dalam

mem-parsingstring agar dapat dikenali struktur kalimatnya. Pada bab sebelumnya telah

dibahas mengenai sintaksis Bahasa Indonesia. Bab ini juga menjelaskan bagaimana sintaksis tersebut akan diolah menjadi bentuk CNF agar algoritma CYK dapat melakukan parsing string. Bab ini juga membahas kebutuhan algoritma Levenshtein dalam memperbaiki struktur kalimat serta mengoreksi kesalahan ejaan pada dokumen Berbahasa Indonesia yang pengujiannya akan dilakukan pada abstrak skripsi di Teknik Informatika Unikom. Selain itu, perancangan UML hingga perancangan antarmuka dari simulator yang akan dibuat dibahas secara detil pada bab ini.

BAB IV IMPLEMENTASI DAN PENGUJIAN

(6)

cara membandingkannya dengan kata yang ada pada kamus menggunakan algoritma Levenshtein. Pada saat yang bersamaan algoritma Levenshtein akan memberikan saran untuk kalimat yang termasuk ke dalam kelompok kata X digantikan sesuai dengan bentuk CNF yang telah dianalisis dari sintaksis Bahasa Indonesia. Hasil akhir dari pengecekkan sistem akan memberikan output berapa banyak saran perbaikan kata dan pola kalimat.

BAB V KESIMPULAN DAN SARAN

(7)

7 2.1 Sintaksis Bahasa Indonesia

Sintaksis membicarakan penataan dan pengaturan kata-kata ke dalam satuan yang lebih besar, yang disebut satuan-satuan sintaksis, yakni kata, frase, klausa, kalimat, dan wacana.

2.1.1 Penyusunan Frase

Frase adalah satuan sintaksis yang tersusun dari dua buah kata atau lebih, yang didalam klausa menduduki fungsi-fungsi sintaksis. Dilihat dari kedudukan kedua unsurnya, dibedakan adanya frase koordinatif dan frase subordinatif. Frase koordinatif yaitu yang kedudukan kedua unsurnya sederajat, sedangkan frase subordinatif, yaitu yang kedudukan kedua unsurnya tidak sederajat. Ada yang berkedudukan sebagai unsur atasan yang disebut sebagai inti frase dan ada yang berkedudukan sebagai bawahan, yang disebut tambahan penjelas frase [5]. Frase dibagi menjadi beberapa kelompok:

1. Frase Nomina Koordinatif 2. Frase Nomina Subordinatif 3. Frase Verba Koordinatif 4. Frase Verba Subordinatif 5. Frase Ajektifa Koordinatif 6. Frase Ajektifa Subordinatif 7. Frase Preposisional

2.1.1.1 Penyusunan Frase Nomina

(8)

1. Penyusunan Frase Nomina Koordinatif FNK dapat disusun dari:

a. Dua buah kata berkategori nomina yang merupakan pasangan dan antonim relasional. Contoh: ayah ibu, pembeli penjual, guru murid, pembicara pendengan, siang malam, penatar petatar.

b. Dua buah kata berkategori nomina yang merupakan anggota dari suatu medan makna. Contoh: sawah ladang, kampung halaman, cabe bawang, ayam itik, tikar bantal, semen pasir.

2. Penyusunan Frase Nomina Subordinatif

Frase nomina subordinatif dapat disusun dari nomina + nomina (N + N), nomina + verba (N + V), nomina + ajektifa (N + A), adverbia + nomina (Adv + N), nomina + adverbia (N + Adv), nomina + numeralia (N + Num), numeralia + nomina (Num + N), dan nomina + demonstratifa (N + Dem).

a. FNS yang berstruktur N + N

Beberapa contoh dari FNS yang berstruktur N + N dapat dilihat pada tabel 2.1.

Tabel 2.1 Contoh frase nomina (N + N)

Makna Gramatikal Contoh Frase

milik rumah paman

bagian awal tahun

asal bahan cincin emas

asal tempat jeruk bali

campuran roti keju

hasil lukisan Afandi

jenis mobil sedan

gender anak laki-laki

seperti jamur kuping

model topi koboi

memakai kereta listrik

peruntukkan pensil alis

ada di angkatan darat

(9)

letak pintu belakang

dilengkapi kursi roda

sasaran perluasan kota

pelaku pemberian kakek

alat perang mulut

b. FNS yang berstruktur N + V

Beberapa contoh dari FNS yang berstruktur N + V dapat dilihat pada tabel 2.2.

Tabel 2.2 Contoh frase nomina (N + V)

Makna Gramatikal Contoh Frase

tempat halaman parkir

kegunaan pisau cukur

yang di sambal goreng

yang biasa melakukan tukang copet

c. FNS yang berstruktur N + A

Beberapa contoh dari FNS yang berstruktur N + A dapat dilihat pada tabel 2.3.

Tabel 2.3 Contoh frase nomina (N + A)

Makna Gramatikal Contoh Frase

keadaan mobil rusak

derajat sekolah dasar

rasa kecap manis

bentuk rumah mungil

d. FNS yang berstruktur Adv + N

(10)

Tabel 2.4 Contoh frase nomina (Adv + N)

Makna Gramatikal Contoh Frase

ingkar tanpa usaha

kuantitas semua penduduk

batas hanya nasi

e. FNS yang berstruktur N + Adv

Sejauh ini FNS yang berstruktur N + Adv hanya bermakna

gramatikal ‘pembatasan’. Dalam hal ini hanya ada sebuah adverbia

pembatasan yaitu ‘saja’. Contoh: Air saja (tak ada yang lain), Uang saja

(bukan benda lain), Dia saja (orang lain tak ada), Garam saja (tanpa bumbu lain), Pensil saja (tidak pakai pena).

f. FNS yang berstruktur Num + N

Beberapa contoh frase FNS yang berstruktur Num + N dapat dilihat pada tabel 2.5.

Tabel 2.5 Contoh frase nomina (Num + N)

Makna Gramatikal Contoh Frase

banyaknya sepuluh rumah

himpunan kelima rumah

g. FNS yang berstruktur N + Num

Sejauh ini FNS yang berstruktur N + Num memiliki makna

gramatikal ‘tingkat’. Contoh: Juara kedua, Kursi ketiga, Rumah kelima,

Simpangan kedua, Anak kelima. h. FNS yang berstruktur N + Dem

Sejauh ini FNS yang berstruktur N + Dem memiliki makna

gramatikal ‘penentu’, dapat disusun apabila N-nya memiliki komponen

(11)

2.1.1.2 Penyusunan Frase Verba

Frase verba adalah frase yang mengisi atau menduduki fungsi predikat pada sebuah kalusa. Dilihat dari kedudukan di antara kedua unsur pembentuknya dibedakan adanya frase verba koordinatif (FVK) dan frase verba subordinatif. 1. Penyusunan Frase Verba Koordinatif (FVK)

Frase verba koordinatif dapat disusun dari:

a. Dua buah kata berkategori verba yang merupakan anggota dari antonim

relasional dan memiliki makna gramatikal ‘menggabungkan’ sehingga di

antara keduanya dapat disisipkan kata ‘dan’. Contoh: Tambah kurang, Jual beli, Pulang pergi, Mundur maju, Naik turun.

b. Dua buah kata berkategori verba yang merupakan anggota dari satu medan

makna dan memiliki makna gramatikal ‘menggabungkan’ sehingga di

antara keduanya dapat disisipkan kata ‘dan’. Contoh: Makan minum, Usap raba, Peluk cium, Makan pakai, Dengar lihat.

2. Penyusunan Frase Verba Subordinatif (FVS)

Frase verba subordinatif dapat disusun dari adverbia + verba (Adv + V), verba + adverbia (V + Adv), verba + nomina (V + N), verba + ajektifa (V + A). a. FVS yang berstruktur Adv + V

Beberapa contoh dari FVS yang berstruktur Adv + V dapat dilihat pada tabel 2.6.

Tabel 2.6 Contoh frase verba (Adv + V)

Makna Gramatikal Contoh Frase

ingkar tidak membayar

frekuensi sering muncul

kuantitas sedikit bicara

waktu sudah mandi

keinginan akan mandi

keselesaian sedang bertemu

keharusan wajib hadir

kepastian pasti hadir

(12)

b. FVS yang berstruktur V + Adv

Beberapa contoh dari FVS yang berstruktur V + Adv dapat dilihat pada tabel 2.7.

Tabel 2.7 Contoh frase verba (V + Adv)

Makna Gramatikal Contoh Frase

berulang makan lagi

ikut serta minum juga

c. FVS yang berstruktur V + N

Beberapa contoh dari FVS yang berstruktur V + N memiliki makna

gramatikal ‘alat’, dapat disusun apabila unsur pertama berkategori verba

yang memiliki komponen makna (+ tindakan) atau (+ perbuatan), sedangkan unsur kedua berkategori nomina yang memiliki komponen makna (+ alat). Contoh: terjun payung, lempar cakram, lari gawang, lompat galah, uji materi.

d. FVS yang berstruktur V + A

FVS yang berstruktur V + A memiliki makna gramatikal ‘keadaan’ atau ‘sifat’ dapat disusun apabila unsur pertama berkategori verba yang

memiliki komponen makna (+ tindakan) atau (+ perbuatan), sedangkan unsur kedua berkategori ajektifa yang memiliki komponen makna (+ keadaan) atau (+ sifat). Contoh: lompat jauh, loncat indah, terjun bebas, jalan cepat, membaca nyaring.

2.1.1.3 Penyusunan Frase Ajektifa

Frase ajektifa adalah frase yang mengisi atau menduduki fungsi predikat dalam sebuah klausa ajektifa. Dilihat dari kedudukan kedua unsurnya dibedakan adanya frase ajektifa koordinatif (FAK) dan frase ajektifa subordinatif (FAS). 1. Penyusunan Frase Ajektifa Koordinatif (FAK)

Frase ajektifa koordinatif (FAK) dapat disusun dari:

a. Dua buah kata berkategori ajektifa yang merupakan anggota dari antonim

(13)

kedua dapat disisipkan kata ‘atau’. Contoh: baik buruk, tua muda, jauh dekat, lama baru.

b. Dua buah kata berkategori ajektifa yang merupakan anggota dari pasangan

bersinonim, dan memiliki makna gramatikal ‘sangat’. Contoh: tua renta,

terang benderang, cantik molek, muda belia, segar bugar.

c. Dua buah kata berkategori ajektifa yang maknanya sejalan tidak

bertentangan dan memiliki makna gramatikal ‘himpunan’ sehingga di

antara keduanya dapat disisipkan kata ‘dan’. Contoh: bulat panjang,

gemuk pendek, tinggi kurus, kecil mungil, lurus mulus.

d. Dua buah kata berkategori ajektifa yang maknanya tidak sejalan

(bertentangan) dan memiliki makna ‘berkebalikan’ sehingga di antara

kedua unsurnya harusnya disisipkan kata ‘tetapi’. Contoh: murah tetapi

bagus, besar tetapi jelek, kecil tetapi mungil, repot tetapi menyenangkan, sedih tapi senang.

2. Penyusunan Frase Ajektifa Subordinatif (FAS)

Frase ajektifa subordinatif disusun dengan struktur A + N, A + A, A + V, Adv + A, dan A + Adv. Aturannya sebagai berikut:

a. FAS yang berstruktur A + N dan memiliki makna gramatikal ‘seperti’

apabila unsur pertama berketegori ajektifa dan memiliki komponen makna (+ warna) dan unsur kedua berkategori nomina dan memiliki komponen makna (+ perbandingan), sehingga di antara kedua unsrunya dapat

disisipkan kata ‘seperti warna’. Contoh: merah darah, kuning emas, hijau

daun, biru langit, kuning gading.

b. FAS yang berstruktur A + A dan memiliki makna gramatikal ‘jenis warna’

dapat disusun dari:

1. Unsur pertama berkategori ajektifa dan berkomponen makna (+ warna) dan unsur kedua berkategori ajektifa dan berkomponen makna (+ cahaya). Contoh: merah terang.

(14)

c. FAS yang berstruktur A + V dan bermakna gramatikal ‘untuk’ dapat disusun aabila unsur pertama berkategori ajektifa dan memiliki komponen makna (+ sikap batin), sedangkan unsur kedua berkategori verba dan memiliki komponen makna (+ tindakan) atau (+ kejadian). Contoh: berani datang, takut pulang, malu bertanya, siap berjuang, berani mati.

d. FAS yang berstruktur Adv + A dan memiliki makna gramatikal ‘ingkar’

dapat disusun apabila unsur pertama berkategori adverbia yang berkomponen makna (+ ingkar) dan unsur kedua berkategori ajektifa dan berkomponen makna (+ keadaan) atau (+ sikap batin). Contoh: tidak takut, tidak berani, tidak malu.

e. FAS yang berstruktur Adv + A dan bermakna gramatikal ‘derajat’ dapat

disusun bilsa unsur pertama berkategori adverbia dan berkomponen makna (+ derajat) atau (+ tingkat), sedangkan unsur kedua berkategori ajektifa dan berkomponen makna (+ keadaan) atau (+ sifat). Contoh: sangat indah, kurang bagus, lebih baik, cukup pandai.

f. FAS yang berstruktur A + Adv dan bermakna gramatikal ‘sangat’ atau

‘tingkat superlatif’ dapat disusun apabila unsur pertama berkategori

ajektifa dan bermakna gramatikal (+ keadaan), sedangkan kedua berkategori adverbia dan berkomponen makna (+ paling) dalam bentuk

kata ‘sekali’. Contoh: indah sekali, bagus sekali, panas sekali.

2.1.1.4 Penyusunan Frase Preposisional

Frase preposisional adalah frase yang berfungsi sebagai pengisi fungsi keterangan di dalam sebuah klausa. Frase preposisional ini buka frase koordinatif maupun subordinatif, melainkan fase eksosentrik. Jadi, di dalam frase ini tidak ada unsur inti dan unsur tambahan. Kedua unsurnya merupakan satu kesatuan yang utuh.

(15)

2.1.2 Penyusunan Klausa

Klausa adalah satuan sintaksis yang bersifat prediktif. Artinya, di dalam satuan atau konstruksi itu terdapat sebuah predikat, bila di dalam satuan tidak terdapat predikat, maka satuan itu bukan disebut klausa. Kedudukan predikat ini sangat penting, sebab jenis dan kategori dari predikat itulah yang menentukan hadirnya fungsi subjek (S), fungsi objek (O), fungsi pelengkap, dan sebagainya [5].

Berdasarkan kategori yang mengisi fungsi P dapat dibedakan menjadi: 1. Klausa verba

2. Klausa nomina 3. Klausa ajektifa 4. Klausa preposisional 5. Klausa numeral

2.1.2.1 Penyusunan Klausa Verba

Secara semantik ada tiga buah jenis verba, yaitu verba tindakan, verba kejadian, dan verba keadaan.

1. Klausa Verba Tindakan

Klausa Verba tindakan dibagi menjadi beberapa kategori: a. Klausa Verba Tindakan Bersasaran Tak Berpelengkap

Klausa tindakan bersasaran tak berpelengkap dapat disusun dari sebuah verba berkomponen makna (+ tindakan) dan (+ sasaran), sehingga klausanya memiliki fungsi sintaksis S, P, O. Dalam hal ini komponen makna V yang mengisi fungsi P harus sejalan dengan komponen makna yang dimiliki fungsi S dan fungsi O. Contoh dapat dilihat pada tabel 2.8.

Tabel 2.8 Contoh klausa verba tindakan bersasaran tak berpelengkap Kalimat Pak Lurah membaca koran

Sintaksis S P O

Makna (+ manusia) (+ manusia) -

(16)

b. Klausa Verba Tindakan Bersasaran Berpelengkap

Klausa tindakan bersasaran berpelengkap dapat disusun dari sebuah verba berkomponen makna (+ tindakan), (+ sasaran), dan (+ pelengkap), sehingga klausanya memiliki fungsi S, P, O, dan Pel. Dalam hal ini tentu saja komponen makna yang dimiliki P harus sejalan dengan komponen makna yang dimiliki fungsi-fungsi lain. Contoh dapat dilihat pada tabel 2.9.

Tabel 2.9 Contoh klausa verba tindakan bersasaran berpelengkap

Kalimat Saya membukakan ayah pintu

Sintaksis S P Pel O

Makna

(+ manusia) (+ manusia) - -

- (+ pembuka) (+ dibukakan) -

- (+ bukaan) (+ bukaan) -

c. Klausa Verba Tindakan Tak Bersasaran

Klausa verba tindakan tidak bersasaran dapat disusun dari sebuah verba yang memiliki komponen makna (+ tindakan) dan (- sasaran), sehingga klausanya hanya memiliki fungsi S dan fungsi P. Dalam hal ini tentu saja komponen makna yang dimiliki P harus sejalan dengan komponen makna yang dimiliki S. Contoh: Anak-anak itu menari, Anjing mengonggong, Mereka sedang berlibur di Bali.

2. Klausa Verba Kejadian

Klausa verba kejadian dapat disusun dari predikat verba yang memiliki komponen makna (+ kejadian). Dalam hal fungsi sintaksis yang wajib hadir adalah fungsi S dan fungsi P. Fungsi S berupa nomina yang mengalami kejadian seperti disebutkan oleh predikat. Contoh dapat dilihat pada tabel 2.10.

Tabel 2.10 Contoh klausa verba kejadian Kalimat Kompor gas baru itu meledak

Sintaksis S P

(17)

3. Klausa Verba Keadaan

Klausa Verba keadaan dapat disusun dari predikat verba yang memiliki komponen makna (+ keadaan). Dalam hal ini fungsi sintaksis yang muncul hanyalah fungsi S dan fungsi P. Fungsi S berupa nomina yang mengalami keadaan seperti yang disebutkan oleh predikat. Contoh dapat dilihat pada tabel 2.11.

Tabel 2.11 Contoh klausa verba keadaan

Kalimat Kami malu dengan kejadian semalam

Sintaksis S P

Makna yang mengalami keadaan 2.1.2.2 Penyusunan Klausa Nomina

Klausa nomina hanya memiliki fungsi wajib S dan P. Klausa nomina ini dapat disusun dari fungsi S yang berupa kata atau frase berkategori nomina dan P yang berupa kata atau frase berkategori nomina. Klausa nomina, antara lain, dapat disusun jika:

1. Nomina yang mengisi fungsi S merupakan jenis (spesifik) dari nomina pengisi fungsi P (generik). Contoh dapat dilihat pada tabel 2.12.

Tabel 2.12 Contoh pertama penyusunan klausa nomina Kalimat Anjing itu binatang

Sintaksis S P

2. Nomina yang mengisi fungsi S mempunyai nama pada nomina pengisi fungsi P. Contoh dapat dilihat pada tabel 2.13.

Tabel 2.13 Contoh kedua penyusunan klausa nomina Kalimat Petani itu Pak Ridwan

Sintaksis S P

(18)

Tabel 2.14 Contoh ketiga penyusunan klausa nomina Kalimat Ibunya dokter gigi di puskesmas itu Sintaksis S P

4. Nomina pengisi fungsi P adalah relasi bagi nomina pengisi fungsi S. Contoh dapat dilihat pada tabel 2.15.

Tabel 2.15 Contoh keempat penyusunan klausa nomina Kalimat Mereka itu murid Pak Rahmat

Sintaksis S P

5. Nomina pengisi fungsi S mempunyai ciri atau sifat khas yang disebutkan oleh nomina pengisi fungsi S. Contoh dapat dilihat pada tabel 2.16.

Tabel 2.16 Contoh kelima penyusunan klausa nomina Kalimat Kereta api kendaraan murah

Sintaksis S P

2.1.2.3 Penyusunan Klausa Ajektifa

Klausa ajektifa memiliki fungsi wajib S dan P. Klausa ajektifa dapat disusun dari fungsi S yang berkategori N dan fungsi P yang berkategori A. Klausa ajektifa ini dapat disusun jika:

1. Fungsi P yang berkategori ajektifa memiliki komponen makna (+ keadaan fisik). Contoh dapat dilihat pada tabel 2.17.

Tabel 2.17 Contoh pertama klausa ajektifa Kalimat Gadis itu tinggi sekali

Sintaksis S P

2. Fungsi P yang berkategori ajektifa memiliki komponen makna (+ sifat batin). Contoh dapat dilihat pada tabel 2.18.

Tabel 2.18 Contoh kedua klausa ajektifa Kalimat Pemuda desa itu sangat berani

(19)

3. Fungsi P yang berkategori ajektifa memiliki komponen makna (+ perasaan batin). Contoh dapat dilihat pada tabel 2.19.

Tabel 2.19 Contoh ketiga klausa ajektifa Kalimat Saya khawatir dengan keadaanmu Sintaksis S P

2.1.2.4 Penyusunan Klausa Preposisional

Klausa preposisional adalah klausa yang fungsi P nya diisi oleh frase preposisional. Contoh dapat dilihat pada tabel 2.20.

Tabel 2.20 Contoh pertama klausa preposisional Kalimat Ibu dan Ayah ke pasar

Sintaksis S P

Klausa preposisional ini lazim digunakan dalam bahasa ragam lisan dan ragam bahasa nonformal. Dalam ragam formal fungsi P akan diisi oleh sebuah verba dan frase preposisinya menjadi fungsi keterangan. Contoh dapat dilihat pada tabel 2.21.

Tabel 2.21 Contoh kedua klausa preposisional Kalimat Mereka datang dari Medan

Sintaksis S P Ket

2.1.2.5 Penyusunan Klausa Numeral

Klausa numeral adalah klausa yang fungsi P nya diisi oleh frase numeral. Contoh dapat dilihat pada tabel 2.22.

Tabel 2.22 Contoh klausa numeral Kalimat Mobil pejabat itu empat buah

Sintaksis S P

2.1.3 Penyusunan Kalimat

(20)

Intonasi final merupakan syarat penting dalam pembentukan sebuah kalimat dapat berupa intonasi deklaratif (yang dalam bahasa ragam tulis diberi tanda titik), intonasi interogatif (yang dalam bahasa ragam tulis diberi tanda tanya), intonasi imperatif (yang dalam bahasa ragam tulis diberi tanda seru), dan intonasi interjektif (yang dalam bahasa ragam tulis diberi tanda seru). Tanpa intonasi final ini sebuah klausa tidak akan menjadi sebuah kalimat.

2.1.3.1 Kalimat Sederhana

Kalimat sederhana adalah kalimat yang dibentuk dari sebuah klausa dasar atau klausa sederhana, yaitu klausa yang fungsi-fungsi sintaksisnya hanya diisi oleh sebuah kata atau sebuah frase sederhana. Contoh: Ayah membaca koran, Kakek tidur di kamar belakang, Istrinya pegawai swasta.

Semua kalimat sederhana yang dibentuk dari klausa dasar ini adalah kalimat deklaratif positif. Lalu, berdasarkan kategori klausanya dapat disusun kalimat dasar atau kalimat sederhana yang berkategori seperti berikut:

1. Kalimat Verba Monotransitif

Kalimat verba monotransitif adalah kalimat yang predikatnya berupa verba yang memiliki komponen makna (+ tindakan) dan (+ sasaran). Contoh dapat dilihat pada tabel 2.23.

Tabel 2.23 Contoh kalimat verba monotransitif Kalimat Nenek membaca buku di kamar

Sintaksis S P O Ket

2. Kalimat Verba Bitransitif

Kalimat verba bitransitif yaitu kalimat yang predikatnya berupa verba yang memiliki komponen makna (+ tindakan), (+ sasaran), dan (+ pelengkap). Contoh dapat dilihat pada tabel 2.24.

Tabel 2.24 Contoh kalimat verba bitransitif Kalimat Kakak membelikan adik sepatu baru

(21)

3. Kalimat Verba Intransitif

Kalimat verba intransitif yaitu kalimat yang predikatnya berupa verba yang memiliki komponen makna (+ tindakan) dan (- sasaran). Contoh dapat dilihat pada tabel 2.25.

Tabel 2.25 Contoh kalimat verba intransitif Kalimat Anak-anak itu menari di aula

Sintaksis S P O

4. Kalimat Nomina

Kalimat nomina yaitu kalimat yang predikatnya berkategori nomina atau dibentuk dari sebuah klausa nomina dan intonasi final. Contoh dapat dilihat pada tabel 2.26.

Tabel 2.26 Contoh kalimat nomina Kalimat Orang itu petani

Sintaksis S P

5. Kalimat Ajektifa

Kalimat ajektifa adalah kalimat yang predikatnya berkategori ajektifa dibentuk dari sebuah klausa ajektifa dan intonasi final. Contoh dapat dilihat pada tabel 2.27.

Tabel 2.27 Contoh kalimat ajektifa Kalimat Rumahnya besar sekali

Sintaksis S P

6. Kalimat Preposisional

Kalimat prepoisisonal yaitu kalimat yang predikatnya berupa frase preposisional atau dibentuk dari sebuah klausa preposisional dan intonasi final. Contoh dapat dilihat pada tabel 2.28.

Tabel 2.28 Contoh kalimat preposisional Kalimat Anak-anak itu di masjid

(22)

7. Kalimat Numeral

Kalimat numeral adalah kalimat yang predikatnya berupa frase numeral dibentuk dari sebuah klausa numeral dan intonasi final. Contoh dapat dilihat pada tabel 2.29.

Tabel 2.29 Contoh kalimat numeral Kalimat Mobil saya tiga buah

Sintaksis S P

Namun, dalam bahasa ragam formal harus dimunculkan predikat verbanya. Contoh: Pensilnya berjumlah lima buah

2.1.3.2 Kalimat Luas

Dalam praktik berbahasa yang sebenarnya seringkali tidak cukup hanya dengan menggunakan kalimat dasar atau kalimat sederhana. Sebuah kalimat biasanya terangkum informasi lebih banyak di dalamnya dan disebut dengan kalimat luas. Beberapa cara dalam menyusun kalimat luas diantaranya:

1. Disusun dengan cara memberi fungsi keterangan lebih dari satu pada sebuah kalimat. Contoh dapat dilihat pada tabel 2.30.

Tabel 2.30 Contoh pertama kalimat luas Kalimat Semalam dengan

diam-diam

adik membaca komik di kamar

Sintaksis Ket. waktu

Ket. cara S P O Ket.

tempat 2. Disusun dengan cara memberi keterangan tambahan pada fungsi subjek, fungsi objek, atau fungsi lainnya pada kalimat tersebut. Contoh dapat dilihat pada tabel 2.31.

Tabel 2.31 Contoh kedua kalimat luas

Kalimat

Preman itu

dengan brutal

(23)

3. Disusun dengan memberi keterangan aposisi pada fungsi subjek, objek, atau fungsi lainnya pada kalimat itu. Contoh dapat dilihat pada tabel 2.32.

Tabel 2.32 Contoh ketiga kalimat luas Kalimat Jalan kereta

api,

alat transportasi masal,

akan dibangun

di pulau Kalimantan

Sintaksis S Ket. Aposisi P Pel.

4. Disusun dengan cara menyisipkan sebuah klausa pada klausa lain. Klausa yang disispkan disebut klausa sisipan, dan klausa yang tersisipi disebut klausa utama. Penyisipan dilakukan dengan menggunakan konjungsi. Contoh dapat dilihat pada tabel 2.33.

Tabel 2.33 Contoh keempat kalimat luas

Kalimat Orang yang sedang antre minyak tanah itu bukan kakak saya.

Klausa utama Orang itu bukan kakak saya

Klausa sisipan Orang itu sedang antre minyak tanah 2.2 POS Tag

POS (Part-of-Speech) Tag merupakan suatu cara pengkategorian kelas kata, seperti kata benda, kata kerja, kata sifat, dan lain-lain. POS Tagging adalah suatu aktivitas menganotasi setiap kata/token dengan nilai part-of-speech tag yang sesuai. Informasi nilai POS Tag ini merupakan hal yang mendasar bagi keperluan pengolahan bahasa manusia [6].

POS Tag yang digunakan sebagai bantuan dalam mengenali token/tag setiap kata diambil dari POS Tag Indonesia yang dibuat oleh Arawinda Dinakaramani, Fam Rashel, Andry Luthfi, dan Ruli Manurung. POS Tag diambil pada tanggal 29 Mei 2015.

(24)

menggunakan aturan-aturan yang sudah didefinisikan untuk menemukan kelas kata yang tepat. Secara garis besar, fungsionalitas POS Tagger dapat terbagi menjadi 6 modul besar [7], yaitu:

1. Multi-word Expression Tokenizer

Merupakan modul tokenisasi yang memperhatikan ekspresi frase yang terdiri lebih dari satu kata. Dokumen diproses oleh tokenizer untuk menghasilkan token-token untuk diberikan part-of-speech yang sesuai kemudian.

2. Name Entity Recognizer

Merupakan modul yang secara khusus menangani token-token entitas

(proper-noun), seperti nama orang, nama tempat, nama organisasi, dan

lain-lain.

3. Closed-Class Word Tagging

Merupakan modul yang berguna untuk menangani token-token yang termasuk ke dalam kategori closed-class word menggunakan sebuah kamus.

4. Open-Class Word Tagging

Merupakan modul yang berguna untuk menangani token-token yang termasuk ke dalam kategori open-class word dengan memanfaatkan MorphInd.

5. Rule-Based Tagging

Merupakan modul yang berguna untuk menyelesaikan token-token ambigu berdasarkan aturan-aturan yang telah didefinisikan sebelumnya.

6. Resolver

Merupakan modul yang berguna untuk memberikan tag kepada token-token yang tidak diketahui.

2.3 Teori Bahasa dan Automata

(25)

Tabel 2.34 Tabel penggolongan tingkatan bahasa menurut Chomsky [8] Bahasa Mesin Otomata Batasan Aturan Produksi Natural Language Mesin Turing Tidak ada batasan

Context Sensitive Linear Bounded Automata

| α | ≤ | β |

Bebas Konteks Push Down Automata α berupa sebuah simbol variabel.

Regular Finite State Automata

(FSA) meliputi

Deterministic Finite

Automata (DFA) &

Nondeterministic Finite

Automata (NFA)

α adalah sebuah simbol

variabel.

β maksimal memiliki

sebuah simbol variabel yang bila ada terletak di posisi paling kanan. Semua penggolongan diatas berdasarkan pembatasan yang dilakukan pada aturan produksinya. Aturan produksi merupakan pusat dari tata bahasa, yang menspesifikasikan bagaimana suatu tata bahasa melakukan transformasi suatu

string ke bentuk lainnya. Melalui aturan produksi tersebut didefinisikan suatu

bahasa yang berhubungan dengan tata bahasa tersebut. Semua aturan produksi dinyatakan dalam bentuk “αβ” (dibaca: α menghasilkan β atau α menurunkan

β). Dimana α menyatakan simbol-simbol pada ruas kiri aturan produksi dan β menyatakan menyatakan simbol-simbol pada ruas kanan aturan produksi (disebut juga sebagai hasil produksi). Simbol-simbol tersebut dapat berupa simbol terminal atau variabel. Simbol variabel masih bisa diturunkan sedangkan simbol terminal sudah tidak dapat diturunkan lagi. Simbol variabel dinyatakan dalam huruf besar sedangkan simbol terminal dinyatakan dengan huruf kecil [8].

Berdasarkan tabel 2.34 pembahasan lebih diarahkan ke bahasa bebas konteks karena algoritma CYK hanya mengenali aturan produksi dari Chomsky

Normal Form (CNF), sedangkan CNF berawal dari Context Free Grammar (CFG)

atau tata bahasa bebas konteks.

2.3.1 Tata Bahasa Bebas Konteks (TBBK)

(26)

simbol terminal dan simbol variabel. Pada CFG aturan produksinya dapat dilihat pada aturan produksi 2.1.

αβ …(2.1)

Dimana α merupakan sebuah simbol variabel dan β merupakan hasil produksi dari α. Contoh aturan produksi yang dapat dibuat dari CFG dapat dilihat pada aturan produksi 2.2.

S  aBCde

B  fGe …(2.2)

Dimana S merupakan variabel awal dan aBCde merupakan hasil produksi dari variabel S begitu juga dengan variabel B yang merupakan turunan dari variabel S. Saat menurunkan suatu string, simbol-simbol variabel akan mewakili bagian-bagian yang belum terturunkan dari string tersebut. Pada CFG letak bagian yang belum terturunkan bisa dimana saja. Saat penurunan itu telah lengkap, semua bagian yang belum terturunkan telah diganti oleh string-string (yang mungkin saja kosong) dari himpunan simbol terminal. Tata bahasa bebas konteks menjadi dasar dalam pembentukan suatu proses analisis sintaksis.

2.3.2 Penyederhanaan Tata Bahasa Bebas Konteks

Penyederhanaan ini bertujuan untuk melakukan pembatasan sehingga tidak menghasilkan aturan produksi yang rumit dan tidak berguna. Suatu tata bahasa bebas konteks dapat disederhanakan dengan cara:

1. Menghilangkan Produksi Useless (tidak berguna)

(27)

S  Aa | B A  ab | D | ɛ

B  b | E | F C  bb

F  G

G  bc …(2.3)

Berdasarkan contoh diatas dapat dilihat bahwa variabel D dan E tidak memiliki penurunan yang menuju terminal, sehingga variabel ini dapat dihilangkan. Konsekuensinya semua variabel D dan E dihapus dari aturan produksi. Variabel C juga dapat dihapus karena tidak ada variabel yang mengarah ke variabel C. Hasil penyederhanaannya dapat dilihat pada aturan produksi 2.4.

S  Aa | B A  ab | ɛ

B  b | F F  G

G  bc …(2.4)

2. Menghilangkan Produksi Unit

Produksi unit adalah produksi dimana ruas kiri dan kanan aturan produksi hanya berupa satu simbol variabel. Keberadaan produksi unit membuat tata bahasa memiliki kerumitan yang tak perlu atau menambah panjang penurunan. Penyederhanaan ini dilakukan dengan cara mengganti aturan produksi unit. Hasil penyederhanaan dapat dilihat pada aturan produksi 2.5.

S  Aa | B A  ab | ɛ

B  b | F F  G

G  bc …(2.5)

(28)

dengan cara mengganti aturan produksi dari variabel B menjadi bc. Hasil penyederhanaannya dapat dilihat pada aturan produksi 2.6.

S  Aa | B A  ab | ɛ

B  b | bc …(2.6)

3. Menghilangkan Produksi Kosong (ɛ)

Produksi ɛ atau produksi kosong dapat dihilangkan, karena produksi ini tidak menghasilkan apa-apa. Contoh aturan produksi dapat dilihat pada aturan produksi 2.7.

S  Aa | B A  ab | ɛ

B  b | bc …(2.7)

Pada aturan produksi 2.7 variabel A mengandung produksi kosong sehingga dapat dihilangkan. Hasil penyederhanaannya dapat dilihat pada aturan produksi 2.8.

S  Aa | B A  ab

B  b | bc …(2.8)

Apabila terdapat kasus seperti aturan produksi 2.9. S  Aa | B

A ɛ

B  b | bc …(2.9)

Semua variabel A yang ada didalam aturan produksi dihapus karena variabel A mengandung produksi kosong. Hasil penyederhanannya dapat dilihat pada aturan produksi 2.10.

S  a | B

B  b | bc …(2.10)

2.3.3 Chomsky Normal Form (CNF)

(29)

dengan menghilangkan produksi useless, unit, dan empty (himpunan kosong yang dilambangkan dengan ɛ).

Aturan produksi dalam bentuk normal Chomsky ruas kanannya tepat berupa sebuah terminal atau dua variabel. Contoh aturan produksi dapat dilihat pada 2.11.

A  BC A  b B  a

C  BA | d …(2.11)

Langkah-langkah dalam pembentukan CNF yaitu: 1. Biarkan aturan produksi yang sudah dalam bentuk CNF.

2. Lakukan penggantian aturan produksi yang ruas kanannya memuat simbol terminal dan panjang ruas kanan > 1.

3. Lakukan penggantian aturan produksi yang ruas kanannya memuat > 2 simbol variabel.

4. Penggantian dapat dilakukan berkali-kali sampai semua aturan produksi berada dalam bentuk CNF.

5. Selama dilakukan penggantian, kemungkinan akan memperoleh aturan-aturan produksi baru dan memunculkan simbol-simbol variabel baru.

Contoh CFG yang sudah disederhanakan dapat dilihat pada aturan produksi 2.12.

S  bC | aB | AB A  bAC | a B  aCB | b

C  cBA | c …(2.12)

(30)

S  bC menjadi S  V1C

S  aB menjadi S  V2B

A  bAC menjadi A  V1AC

A  V1AC menjadi A  V1V3 B  aCB menjadi B  V2CB B  V2CB menjadi B  V2V4

C  cBA menjadi C  V5BA

C  V5BA menjadi C  V5V6 …(2.13)

Aturan produksi baru dapat dilihat pada aturan 2.14. V1  b

V2  a V3  AC V4  CB V5  c

V6  BA …(2.14)

Hasilnya dapat dilihat pada aturan produksi 2.15. S  V1C

S  V2B S  AB A  V1V3

A  V2 B  V2V4

B  V3 C  V5V6

C  V3 V1  b V2  a V3  AC V4  CB V5  c

(31)

2.3.4 Teknik-Teknik Parsing

Dalam ilmu komputer dan linguistik, parsing merupakan proses memecah

input teks menjadi token untuk menentukan pembentukan struktur kalimat. Proses

parsing bertujuan untuk menentukan apakah input tersebut dapat diturunkan dari

state awal tata bahasa yang membentuk pohon penurunan. Ada 2 teknik parsing

yang dapat digunakan diantaranya: 2.3.4.1 Top-Down Parsing

Pada teknik ini proses parsing dilakukan mulai dari root dan mencari terminal-terminal yang berupa kata-kata. Jika penelusuran pencarian terminal tidak ditemukan pada satu simbol, dapat dilakukan pencarian ulang (backtracking) pada simbol lain. Cara kerja top-down parsing dapat dilihat pada gambar 2.1. Kata yang

digunakan sebagai contoh adalah “Anak itu senang diajar”.

Langkah 1

<subjek> <predikat> <kalimat>

Langkah 2

<subjek> <predikat> <kalimat>

<frase nomina>

Langkah 3

<subjek> <predikat> <kalimat>

<frase nomina>

<nomina>

anak

Langkah 4

<subjek> <predikat>

<kalimat>

<frase nomina>

<nomina>

anak

<demonstrativa>

(32)

Langkah 4

<subjek> <predikat> <kalimat>

<frase nomina>

<nomina>

anak

<demonstrativa>

itu

<frase ajektifa>

<ajektifa>

senang

Langkah 5

<subjek> <predikat> <kalimat>

<frase nomina>

<nomina>

anak

<demonstrativa>

itu

<frase ajektifa>

<ajektifa>

senang

<verba>

diajar

Gambar 2.1 Cara kerja top-down parsing [9]

Langkah-langkah pada proses parsing ini dilakukan dengan menelusuri setiap cabang yang akan mengarah ke terminal. Pada proses parsing ini terdapat metode backtracking. Apabila tidak menemukan terminal, cabang sebelumnya melakukan penelusuran dengan mengganti cabang yang dicari. Sebagai contoh pada penelusuran langkah ke-4 sebelum mencapai tag <demonstrativa> dilakukan penelusuran tag <nomina>, <verba>, <ajektiva>, <adverbia>, dan <numeralia>. Penelusuran tersebut disesuaikan dengan penyusunan frase nomina yang terdapat pada sub bab 2.1.1.1.

2.3.4.2 Bottom-Up Parsing

(33)

Langkah 1

Gambar 2.2 Cara kerja bottom-up parsing [9]

Langkah-langkah pada proses parsing bottom-up dilakukan dengan mengenali terlebih dahulu cabang dari terminal-terminal yang ditelusuri. Pada

contoh gambar 2.2 kata “anak” merupakan terminal dari cabang <nomina>, kata

“itu” merupakan terminal dari cabang <demonstrativa>, kata “senang” merupakan

terminal dari cabang <ajektiva>, dan kata “diajar” merupakan terminal dari cabang <verba>. Pada tahap selanjutnya dilakukan penelusuran root dari cabang <ajektiva> dan <verba>. Jika ada, penelusuran berlanjut ke cabang yang ada disebelah kirinya. Penelusuran dilakukan hingga dapat mencapai root <kalimat>.

2.4 Algoritma Cocke-Younger-Kasami (CYK)

Algoritma CYK merupakan algoritma parsing dan keanggotaan

(34)

algoritma ini adalah tata bahasa harus berada dalam bentuk CNF. Tujuan dari algoritma ini adalah untuk menunjukkan apakah suatu string dapat diterima dari suatu tata bahasa.

Proses parsing untai dengan algoritma CYK menggunakan struktur data sebuah array dua dimensi dengan jumlah baris dan kolom n x n. Nilai n ditentukan dari jumlah kata dalam suatu kalimat. Proses parsing dari algoritma ini memanfaatkan hasil parsing sebelumnya untuk menentukan apakah proses yang sedang berlangsung dapat diterima atau tidak.

Sebagai contoh terdapat suatu aturan produksi 2.16 dengan variabel awal S. S  EF | EC

E  AB F  CD A  a B  b C  c

D  d …(2.16)

String yang akan diperiksa misalnya “abcd”. Langkah pertama yang

dilakukan adalah dengan membuat tabel dua dimensi seperti gambar 2.1.

a b c d

Gambar 2.3 Pembentukan tabel parsing algoritma CYK

(35)

a b c d

A

Gambar 2.4 Pengisian tabel dengan variabel A

Blok selanjutnya diisi dengan langkah yang sama, sehingga dapat dilihat baris pertama isiannya seperti gambar 2.5.

a b c d

A B C D

Gambar 2.5 Pengisian tabel baris pertama

Pada baris selanjutnya cara pengisian dilakukan dengan melihat variabel pada dua blok, kemudian dilihat variabel mana yang menghasilkan kedua variabel tersebut. Sebagai contoh baris kedua kolom pertama diisi dengan melihat variabel pada blok pertama dan blok dua, yaitu variabel A dan B yang termasuk ke dalam variabel E, sehingga cara pengisiannya terlihat seperti pada gambar 2.6.

a b c d

E

A B C D

Gambar 2.6 Pengisian tabel dengan variabel B

(36)

a b c d

E - F

A B C D

Gambar 2.7 Pengisian tabel baris kedua

Pengisian pada baris ketiga dan selanjutnya hampir sama seperti baris kedua, namun terdapat perbedaan dari cara pengecekkan yang dilakukan. Pengisian baris ketiga dilakukan dari baris pertama hingga sebelum baris ketiga (n-1). Cara pengecekkan dapat dilihat seperti gambar 2.8 dan 2.9.

a b c d

E - F

S

A B C D

Gambar 2.8 Cara pengecekkan langkah pertama

a b c d

E - F

S

A B C D

Gambar 2.9 Cara pengecekkan langkah kedua

(37)

a b c d

E - F

S

-S

A B C D

Gambar 2.10 Hasil parsing string dengan algoritma CYK

Dapat dilihat dari gambar diatas string“a b c d” termasuk ke dalam aturan

produksi yang sudah dibuat, artinya string tersebut dapat dikatakan sebagai kalimat dalam contoh ini. Jika baris dan kolom terakhir tidak menghasilkan tanda “-”, string

tersebut belum dapat dikenali oleh algoritma CYK. 2.5 Algoritma Levenshtein

Algoritma Levenshtein merupakan algoritma pencarian jumlah perbedaan

string yang ditemukan oleh Vladimir Levenshtein, seorang ilmuwan Rusia, pada

tahun 1965. Algoritma ini digunakan secara luas dalam berbagai bidang, misalnya mesin pencari, pengecek ejaan (spell checking), pengenalan pembicaraan (speech

recognition), pengucapan dialek, analisis DNA, dan lain-lain.

Dua buah string dibandingkan untuk mengetahui nilai edit distance-nya.

Edit distance adalah suatu pengukuran (metrik) yang dihasilkan melalui

perhitungan jumlah perbedaan yang terdapat pada dua string. Edit distance antara

dua string didefinisikan sebagai jumlah minimum perubahan yang diperlukan untuk

mengganti suatu string dengan string lain, dengan operasi penambahan (insert), operasi penggantian (substitute), operasi penghapusan (delete).

(38)

0

1

2

3

1 2 3

T

O

P

T O P

4 I

Gambar 2.11 Inisialisasi awal tabel levenshtein

Pada gambar diatas kata “top” akan dilakukan perbandingan dengan kata

“topi” untuk melihat nilai edit distance-nya. Pengisian dilakukan mulai dari blok [1,1] dengan membandingkan karakter yang ada pada blok [0,1] dan blok [1,0]. Apabila karakter yang dibandingkan sama, turunkan nilai yang ada pada blok [0,0] yaitu angka 0. Nilai edit distance-nya dapat dilihat pada gambar 2.12.

0

1

2

3 1

0

2 3

T

O

P

T O P

4 I

Gambar 2.12 Penurunan angka 0 ke baris 1 kolom 1

(39)

0

Gambar 2.13 Pengisian blok [1,2]

Langkah selanjutnya isi semua blok sampai akhir dengan langkah yang sama. Hasil akhir dari pengisian tabel Levenshtein diatas dapat dilihat pada gambar 2.14.

Gambar 2.14 Hasil akhir pengisian tabel Levenshtein

Nilai edit distance dapat dilihat dari baris dan kolom terakhir, yaitu angka 1. Nilai inilah yang akan mengetahui seberapa banyak perbedaan karakter antara dua string.

2.6 Pemrograman Berorientasi Objek

Metodologi berorientasi objek adalah suatu strategi pembangunan perangkat lunak yang mengorganisasikan perangkat lunak sebagai kumpulan objek yang berisi data dan operasi yang diberlakukan terhadapnya. Metodologi berorientasi objek merupakan suatu cara bagaimana sistem perangkat lunak dibangun melalui pendekatan objek secara sistematis. Metode berorientasi objek didasarkan pada penerapan prinsip-prinsip pengelolaan kompleksitas.

(40)

1. Meningkatkan produktivitas

Kelas dan objek yang ditemukan dalam suatu masalah masih dapat dipakai ulang untuk masalah lainnya yang melibatkan objek tersebut (reusable). 2. Kecepatan pengembangan

Sistem yang dibangun dengan baik dan benar pada saat analisis dan perancangan akan menyebabkan berkurangnya kesalahan pada saat pengkodean.

3. Kemudahan pemeliharaan

Pola-pola yang cenderung tetap dan stabil dapat dipisahkan dan pola-pola yang mungkin sering berubah-ubah.

4. Adanya konsistensi

Sifat pewarisan dan penggunaan notasi yang sama pada saat analisis, perancangan, maupun pengkodean.

5. Meningkatkan kualitas perangkat lunak

Pendekatan pengembangan lebih dekat dengan dunia nyata dan adanya konsistensi pada saat pengembangannya, perangkat lunak yang dihasilkan akan mampu memenuhi kebutuhan pemakai serta mempunyai sedikit kesalahan. Beberapa konsep dasar dari pemrograman berorientasi objek adalah: 1. Kelas (Class)

Kelas adalah kumpulan objek-objek dengan karakteristik yang sama. Sebuah kelas akan mempunyai sifat (attribut), tingkah laku (operasi/metode), hubungan (relationship) dan arti. Secara teknis, kelas adalah sebuah struktur tertentu dalam pembuatan perangkat lunak. Kelas merupakan bentuk struktur pada kode program yang menggunakan metodologi berorientasi objek. Kelas secara fisik adalah berkas atau file yang berisi kode program, dimana kode program merupakan semua hal yang terkait dengan nama kelas.

2. Objek (Object)

(41)

berpengaruh pada status objeknya. Secara teknis, sebuah kelas saat program dieksekusi maka akan dibuat sebuah objek. Objek dilihat dari segi teknis adalah elemen pada saat runtime yang akan diciptakan, dimanupulasi, dan dihancurkan saat eksekusi sehingga sebuah objek hanya ada saat sebuah program dieksekusi.

3. Metode (Method)

Metode pada sebuah kelas hampir sama dengan fungsi atau prosedur pada metodologi struktural. Sebuah kelas boleh memiliki lebih dari satu metode. Metode berfungsi untuk memanipulasi objek itu sendiri. Metode merupakan fungsi atau transformasi uang dapat dilakukan terhadap objek atau yang dilakukan objek. Metode dapat berasal dari event, aktivitas atau keadaan, fungsi, atau tingkah laku. Contohnya seperti read, write, move, copy, dan sebagainya.

4. Atribut

Atribut adalah variabel yang dimiliki sebuah kelas. Atribut dapat berupa nilai atau elemen-elemen data yang dimiliki oleh objek dalam kelas objek. Atribut dipunyai secara individual oleh sebuah objek, misalnya seperti berat, jenis, nama, dan sebagainya.

5. Abstrak (Abstract)

Abstrak prinsip untuk merepresentasikan dunia nyata yang kompleks menjadi satu bentuk model yang sederhana dengan mengabaikan aspek-aspek lain yang tidak sesuai dengan permasalahan.

6. Enkapsulasi

Enkapsulasi merupakan pembungkusan atribut data dan layanan (operasi-operasi) yang dimiliki objek untuk menymbunyikan implementasi dan objek sehingga objek lain tidak mengetahui cara kerjanya.

7. Pewarisan

(42)

8. Antarmuka (Interface)

Interface sangat mirip dengan kelas, tetapi tanpa atribut kelas dan memiliki

metode yang dideklarasikan tanpa isi. Deklarasi metode dari sebuah interface

dapat diimplementasikan oleh kelas lain. Sebuah kelas dapat mengimplementasikan lebih dari satu interface.

2.7 Unified Modelling Language (UML)

UML adalah sebuah tools atau alat yang banyak digunakan di dunia industri untuk mendefinisikan kebutuhan, membuat analisis & design, serta menggambarkan arsitektur dalam pemrograman berorientasi objek.

2.7.1 Use Case Diagram

Use case diagram merupakan pemodelah untuk mengetahui tingkah laku

(behaviour) sistem yang akan dibuat. Use case mendeskripsikan sebuah interaksi

antara satu atau lebih aktor dengan sistem yang akan dibuat. Use case, digunakan untuk mengetahui fungsi apa saja yang ada di dalam sebuah sistem dan siapa saja yang berhak menggunakan sistem fungsi-fungsi itu.

Syarat penamaan pada use case adalah nama didefinisikan sesingkat dan sejelas mungkin agar dapat dipahami. Ada dua hal dalam membuat sebuah use case, yaitu:

1. Aktor

Aktor merupakan orang, proses, atau sistem lain yang berinteraksi dengan sistem utama yang akan dibuat. Meskipun simbol aktor itu adalah orang, tetapi belum tentu aktor itu adalah orang.

2. Use Case

Use case merupakan fungsionalitas yang disediakan sistem sebagai unit-unit

yang saling bertukar pesan antar unit atau aktor. 2.7.2 Class Diagram

Class diagram atau kelas diagram menggambarkan struktur sistem dari segi

(43)

program atau programmer membuat kelas-kelas sesuai rancangan di dalam diagram kelas agar antara dokumentasi perancangan dan perangkat lunak dapat sinkron.

Susunan struktur kelas yang baik pada diagram kelas sebaiknya memiliki jenis-jenis kelas berikut:

1. Kelas main

Kelas main merupakan kelas yang mempunyai fungsi awal yang dieksekusi ketika sistem dijalankan.

2. Kelas yang menangani tampilan sistem (view)

Kelas ini mendefinisikan dan mengatur tampilan ke pengguna. 3. Kelas yang diambil dari pendefinisian use case (controller)

Kelas ini menangani fungsi-fungsi yang harus ada diambil dari pendefinisisan use case. Kelas ini biasanya disebut dengan kelas proses yang menangani proses bisnis pada perangkat lunak.

4. Kelas yang diambil dari pendefinisian data (model)

Kelas ini digunakan untuk memegang atau membungkus data menjadi sebuah kesatuan yang diambil maupun akan disimpan ke basis data. Semua tabel yang dibuat di basis data dapat dijadikan kelas.

2.7.3 Activity Diagram

Activity diagram atau diagram aktivitas mengambarkan workflow atau

aktivitas dari sebuah sistem atau proses bisnis atau menu yang ada pada perangkat lunak. Perlu diperhatikan bahwa diagram aktivitas menggambarkan aktivitas sistem bukan apa yang dilakukan aktor, jadi aktivitas yang dapat dilakukan oleh sistem.

Diagram aktivitas juga banyak digunakan untuk mendefinisikan hal-hal berikut:

1. Rancangan proses bisnis dimana setiap urutan aktivitas yang digambarkan merupakan proses bisnis sistem yang didefinisikan

2. Urutan atau pengelompokkan tampilan dari sistem/user interface dimana setiap aktivitas dianggap memiliki sebuah rancangan antarmuka tampilan.

3. Rancangan pengujian dimana setiap aktivitas dianggap memerlukan sebuah pengujian yang perlu didefinisikan kasus ujinya.

(44)

2.7.4 Sequence Diagram

Sequence diagram atau diagram sekuen menggambarkan kelakuan objek

(45)

45 3.1 Analisis Sistem

Analisis metode dilakukan dengan tujuan mendapatkan analisis yang sesuai dengan bidang ilmu yang diteliti. Analisis dijelaskan secara detil mulai dari analisis masalah, analisis data masukkan, analisis sintaksis untuk pembentukan aturan produksi, analisis kebutuhan non-fungsional, dan analisis kebutuhan fungsional dari studi kasus yang diteliti.

3.1.1 Analisis Masalah

Berdasarkan hasil penelitian tentang EYD, algoritma CYK dan algoritma Levenshtein, maka masalah yang dihadapi pada penelitian yang membahas tentang algoritma Levenshtein [2] adalah belum diketahui cara memperbaiki pola kalimat yang keliru. Oleh karena itu, pada penelitian ini akan dilakukan perbaikan pola kalimat yang dimulai dari pemeriksaan kata dengan membagi ke dalam kelompok-kelompok kata, pemeriksaan kalimat menggunakan algoritma CYK, sampai perbaikan pola kalimat menggunakan algoritma Levenshtein.

3.1.2 Analisis Data Masukkan

(46)

Tabel 3.1 Pengelompokkan kata berdasarkan POS Tag Indonesia [6]

No. Tag Deskripsi Contoh

1 CC Konjungsi koordinatif adalah konjungsi yang menghubungkan dua buah konstituen yang kedudukannya sederajat.

dan, tetapi, namun, lalu, sedangkan.

2 CD Numeralia kardinal yaitu numeralia yang

menjadi jawaban atas pertanyaan “berapa?”. dua juta, enam, 900, 0.25, banyak, ratusan.

3 OD Numeralia ordinal menyatakan urutan dan

menjadi jawaban atas pertanyaan “yang keberapa?”

kedua, ke-3, pertama

4 DT Artikula bertugas membatasi makna nomina para, sang, si 5 FW Kata yang berasal dari bahasa asing yang

belum diserap ke dalam bahasa Indonesia. Pada dasarnya, kata bahasa asing adalah kata yang tidak terdapat di dalam kamus bahasa Indonesia.

Jika sebuah kata bahasa asing menjadi bagian dari proper noun atau nama, kata bahasa asing tersebut dimasukkan ke dalam kelompok kata NNP.

climate change,

terms and

condition

6 IN Preposisi menghubungkan kata atau frasa dengan konstituen di depan preposisi tersebut sehingga terbentuk frasa preposisional.

dalam, dengan, di, oleh, pada

7 JJ Ajektifa adalah kata yang memberikan keterangan khusus tentang sesuatu yang dinyatakan oleh nomina dalam kalimat.

bersih, marah,

manusia, binatang, benda, konsep, atau pengertian.

kera, sekarang, bawah

11 NNP Proper Noun adalah nama spesifik dari

seseorang, sesuatu, atau sebuah tempat.

Boediono,

(47)

12 NND Penggolong atau nomina ukuran. Penggolong menempatkan nomina ke dalam sebuah kelompok tertentu dalam jumlah tertentu. Nomina ukuran merujuk pada ukuran, jarakm volume, kecepatan, berat, atau temperatur.

orang, ton, helai, lembar

13 PR Demonstrativa atau pronomina penunjuk ini, itu, disini, disitu

14 PRP Pronomina persona, yaitu pronomina yang dipakai untuk mengacu pada orang atau kata ganti orang tunggal atau jamak.

saya, kami, dia, mereka

15 RB Adverbia atau disebut juga kata keterangan. sangat, hanya, seluruh, cukup 16 RP Partikel yang digunakan untuk menegaskan

kalimat interogatif, imperatif, atau deklaratif.

pun, -lah, -kah 17 SC Konjungsi subordinatif adalah kkonjungsi

yang menghubungkan dua buah konstituen yang kedudukannya tidak sederajat.

sebab, jika, meskipun, supaya

18 SYM Simbol IDR, +, %

19 UH Interjeksi mengungkapkan rasa hati atau perasaan pembicara dan secara sintaksis tidak berhubungan dengan kata-kata lain di dalam kalimat.

oh, aduh, ayo, mari

20 VB Verba atau kata kerja dapat berupa verba transitif, verba intransitif, verba aktif, verba pasif, dan kopula. Jika kata dasar dari verba berimbuhan berupa kata asing, verba tersebut tetap dimasukkan ke dalam kelompok kata VB, misalnya di-accept.

merancang, mengatur, pergi, bekerja,

terbangun

21 WH Pronomina penanya atau disebut juga kata tanya. Pronomina penanya digunakan dalam kalimat interogatif sebagai pemarkah pertanyaan. Klausa tanya yang ada di kalimat deklaratif merupakan klausa subordinatif sehingga pronomina penanya yang menghubungkan kata tanya dengan klausa lain di dalam kalimat deklaratif menjadi konjungsi subordinatif.

siapa, apa, kemana, di mana, berapa

22 X Kata atau bagian yang tidak diketahui atau belum diketahui secara pasti kategorinya.

Statemen

(48)

3.1.3 Analisis Sintaksis untuk Aturan Produksi

Berdasarkan pembahasan tentang sintaksis Bahasa Indonesia dan pengelompokkan kata dengan POS Tag Indonesia, selanjutnya pada bagian ini akan dijelaskan bagaimana membuat aturan produksi dalam bentuk CNF. Sebelumnya, seluruh penamaan kelompok kata harus diubah ke dalam aturan POS Tag agar tidak sulit dalam mengecek aturan produksinya. Perubahannya dapat dilihat pada tabel 3.2.

Tabel 3.2 Tabel penamaan kelompok kata ke dalam POS Tag

Nama Kelompok Kata Diubah Menjadi

Noun / Kata Benda (N) NN, NNP, NND, PRP, atau WH

Adjective / Kata Sifat (A) JJ

Verb / Kata Kerja (V) VB

Adverb / Kata Keterangan (Adv) RB

Numeralia (Num) OD dan CD

Preposisi (P) IN

Demonstrative (Dem) PR

3.1.3.1 Aturan Produksi untuk Frase Nomina (FN)

(49)

NN

NN

VB

JJ

RB

DEM NUM

Gambar 3.1 Statechart untuk aturan produksi frase nomina

Aturan penamaan kelompok kata disesuaikan dengan tag dari POS Tag Indonesia (berdasarkan tabel 3.2) agar tidak perlu lagi ada perubahan pada saat pengecekkan kelompok kata. Pemberian tag untuk nomina pada gambar 3.1 digeneralisasi menjadi NN. Tag NN bisa disebut sebagai NND, NNP, NND, PRP, atau WH.

3.1.3.2 Aturan Produksi untuk Frase Verba (FV)

Susunan kelompok kata yang dapat dibentuk dari frase verba adalah V + Adv, Adv + V, V + N, V + A. Aturan produksinya dapat dilihat pada gambar 3.2.

VB

RB

NN

JJ

(50)

3.1.3.3 Aturan Produksi untuk Frase Ajektifa (FA)

Susunan kelompok kata yang dapat dibentuk dari frase ajektiva adalah A + N, A + A, A + V, Adv + A, A + Adv. Aturan produksinya dapat dilihat pada gambar 3.3.

JJ

NN

JJ

VB

RB

Gambar 3.3 Statechart untuk aturan produksi frase ajektiva 3.1.3.4 Aturan Produksi untuk Frase Preposisional (FP)

Susunan untuk frase preposisional hanya P + N saja. Nomina bisa berupa kata atau frase. Apabila variabel P disesuaikan dengan tag yang ada pada POS Tag, hasilnya akan seperti pada gambar 3.4.

IN

NN

NND

NNP

PRP

(51)

3.1.3.5 Aturan Produksi untuk Klausa Verba (KV)

Secara umum aturan produksi untuk klausa verba dapat dilihat pada gambar 3.5.

NN VB

NN

VB

JJ

RB

DEM NUM NN

Gambar 3.5 Statechart untuk aturan produksi klausa verba 3.1.3.6 Aturan Produksi untuk Klausa Nomina (KN)

(52)

NN

NN

VB

JJ

RB

DEM NUM

NN DEM

Gambar 3.6 Statechart untuk aturan produksi klausa nomina 3.1.3.7 Aturan Produksi untuk Klausa Ajektiva (KA)

Penyusunan aturan produksi untuk klausa ajektiva wajib memiliki fungsi S dan P. Fungsi N diisi dengan kategori nomina dan P diisi dengan kategori ajektiva. Aturan produksinya dapat dilihat pada gambar 3.7.

JJ

JJ

NN

RB VB

NN DEM RB

(53)

3.1.3.8 Aturan Produksi untuk Klausa Preposisional

Penyusunan aturan produksi untuk klausa preposisional wajib memiliki fungsi S dan P. Fungsi P diisi oleh frase preposisional. Aturan produksinya dapat dilihat pada gambar 3.8.

IN

NN

NND

NNP

PRP NN

Gambar 3.8 Statechart untuk aturan produksi klausa preposisional 3.1.3.9 Aturan Produksi untuk Klausa Numeral

Penyusunan aturan produksi untuk klausa nomina wajib memiliki fungsi S dan P. Fungsi P diisi oleh frase numeral. Aturan produksinya dapat dilihat pada gambar 3.9.

NUM

NN DEM

Gambar 3.9 Statechart untuk aturan produksi klausa numeral 3.1.3.10 Aturan Produksi untuk Kalimat Sederhana

(54)

3.1.3.11 Aturan Produksi untuk Kalimat Luas

Secara umum gambaran aturan produksi dari kalimat luas dalam hal ini adalah gabungan dari kedua klausa dengan menggunakan kata sambung antar klausa.

NN VB

NN

VB

JJ

RB

DEM NUM

NN SC VB NN

NN

VB

JJ

RB

DEM NUM NN

DEM DEM

IN IN

Gambar 3.10 Statechart untuk aturan produksi kalimat luas 3.1.3.12 Aturan Produksi yang Terbentuk

Hasil aturan produksi yang terbentuk dari statechart yang sudah digambarkan dapat dilihat pada lampiran A.

(55)

Start

(56)

3.1.4.1 Proses Pemecahan Paragraf

Pada tahap awal dokumen abstrak yang akan diberi rekomendasi perbaikan akan dipecah paragrafnya menjadi kalimat kemudian kalimat menjadi kata. Proses pemecahan paragraf dibagi menjadi 2 tahap, yaitu:

1. Paragraf menjadi Kalimat

Pada tahap ini akan diketahui ada berapa kalimat dalam satu paragraf abstrak yang diuji. Cara memecah paragraf menjadi kalimat dapat menggunakan regex. Tanda yang dilihat antar kalimat adalah titik. Titik menjadi penanda akhir kalimat namun tidak semua titik merupakan penanda akhir sebuah kalimat. Pola yang dibentuk dari regex adalah [karakter][tanda_titik][spasi].

Tahap awal pengecekan dilakukan dengan menelusuri karakter demi karakter yang ada pada paragraf abstrak. Sebagai contoh paragraf yang akan diperiksa dapat dilihat pada tabel 3.3.

Tabel 3.3 Paragraf pada abstrak

Kualitas barng adalah merupakan hal yang terpenting dalam sebuah perdagangan. Sitem otomatis yang dibuat untuk menjaga kualitas barang yaitu berbasis embedded system mikrokontroler. Karena pengantar barang tidak perlu repot untuk turun dan menutp atap mobil truk ktika hujan turun karena dengan embedded system alat akan bekerja secara otomatis menutup atap mobil sesuai dengan kondisi cuaca. Data sensor suhu, sensor cahasya dan sensor air akan diolah dengan bantuan bahasa tingkat tinggi arduino pada mikrokontroler demi mendapatkan suatu tindakan yang tepat dan cepat.

(57)

Tabel 3.4 Pecahan kalimat yang terbentuk

No. Kalimat

1 Kualitas barng adalah merupakan hal yang terpenting dalam sebuah perdagangan.

2 Sitem otomatis yang dibuat untuk menjaga kualitas barang yaitu berbasis embedded system mikrokontroler.

3 Karena pengantar barang tidak perlu repot untuk turun dan menutp atap mobil truk ktika hujan turun karena dengan embedded system alat akan bekerja secara otomatis menutup atap mobil sesuai dengan kondisi cuaca.

4 Data sensor suhu, sensor cahasya dan sensor air akan diolah dengan bantuan bahasa tingkat tinggi arduino pada mikrokontroler demi mendapatkan suatu tindakan yang tepat dan cepat.

2. Kalimat menjadi Kata

Pada tahap ini, kalimat-kalimat yang sudah terbentuk akan dipisahkan berdasarkan spasi. Tanda titik yang ikut dalam pemisahan kalimat akan dibuang untuk menghindari kesalahan pemeriksaan saat melakukan pengelompokkan kata.

3.1.4.2 Pengelompokkan Kata

Pada tahap ini setiap kata dikelompokkan sesuai dengan kamus yang diambil berdasarkan aturan dari POS Tag. Tanda titik pada akhir kalimat harus disertakan juga untuk proses pembentukan pola kalimat. Pengelompokkan kata yang terbentuk dapat dilihat pada tabel 3.5.

Tabel 3.5 Pengelompokkan kata

Kalimat ke Kata Tag

Kalimat ke-1

Kualitas NN

barng X

adalah VB

merupakan VB

hal NN

yang SC

terpenting VB

dalam IN

(58)

perdagangan NN

. Z

Kalimat ke-2

Sitem X

otomatis NN

yang SC

dibuat VB

untuk IN

menjaga VB

kualitas NN

barang NN

yaitu CC

berbasis VB

embedded NNP

system NNP

mikrokontroler NNP

. Z

Kalimat ke-3

Karena SC

pengantar NN

barang NN

tidak NEG

perlu RB

repot JJ

untuk IN

turun VB

dan CC

menutp X

atap NN

mobil NN

truk NN

ktika X

hujan NN

turun VB

karena SC

dengan SC

Gambar

Gambar 2.2 Cara kerja bottom-up parsing [9]
Gambar 2.12 Penurunan angka 0 ke baris 1 kolom 1
Gambar 2.13 Pengisian blok [1,2]
Gambar 3.1 Statechart untuk aturan produksi frase nomina
+7

Referensi

Dokumen terkait

Dari pendapat-pendapat di atas asumsi normalitas dan varians yang homogen selalu ada, sedangkan asumsi yang lain, yaitu random sampling dan data variabelnya paling tidak

Tanah bengkok yang merupakan tanah adat yang telah di koversi menjadi hak pakai diatur dalam Pasal VI UUPA ketentuan Konversi, Tanah bengok yang merupakan bagian dari

Aminuddin (2013: 80), menjelaskan bahwa untuk menentukan tokoh utama dalam cerita atau fiksi, dapat dilakukan dengan berbagai cara dan pertimbangan. Pertama, melihat

Digunakan untuk mendapatkan informasi atau data-data yang berkaitan dengan wewenang penghulu, peraturan pencatatan nikah, dan data empiris yang dalam hal ini yakni

Untuk kasus perjudian yang dilakukan oleh tersangka Indra Linda, Dewi Martini, Yanti, Ijun, Novi Zelvita, Sandra Permata dan Norma berdasarkan Laporan Polisi Nomor:

Selain data intern, data ekstern, data primer, dan data sekunder, data dapat juga dibedakan ke dalam data diskrit dan data kontinu6. Data diskrit adalah data yang

Bentuk-bentuk adaptasi pada subjek dalam penelitian ini saat pertama kali datang di UPT adalah sebagai berikut : menerima kondisi saat ini, adanya dukungan

perundangan yang berlaku: Denda pekerjaan yang terlambat diselesaikan oleh pihak ketiga minimal sebesar Rp590,7 juta yang terjadi di Pemerintah Kabupaten Ende, Manggarai, Sumba