• Tidak ada hasil yang ditemukan

Aplikasi Pengubah Bentuk Normal Chomsky Menjadi Bentuk Normal Greibach dengan Metode Substitusi

N/A
N/A
Protected

Academic year: 2021

Membagikan "Aplikasi Pengubah Bentuk Normal Chomsky Menjadi Bentuk Normal Greibach dengan Metode Substitusi"

Copied!
8
0
0

Teks penuh

(1)

Aplikasi Pengubah Bentuk Normal Chomsky Menjadi Bentuk Normal

Greibach dengan Metode Substitusi

1Rico Andrian, 2Wamiliana, 3Andikha Y.C. Dabukke 1Jurusan Ilmu Komputer FMIPA Unila

2Jurusan Matematika FMIPA Unila 3Jurusan Ilmu Komputer FMIPA Unila

Abstract

The research was conducted with making an application to change Chomsky Normal Form (CNF) to Greibach Normal Form (GNF) with substitution method. One way of representing Context Free Grammar (CFG) is using Greibach Normal Form (GNF). The development of the application starts by making algorithm with prototype method to change Chomksy Normal Form (CNF) to Greibach Normal Form (GNF). This application is used to change Chomsky Normal Form to Greibach Normal Form and the results show that the application can change Chomsky Normal Form to Greibach Normal Form smoothly.The input for the application must be on Chomksy Normal Form (CNF).

Keywords: Chomsky Normal Form, Context Free Grammar, Greibach Normal Form, Prototype

Method

1

Pendahuluan

Teori bahasa automata merupakan salah satu teori komputasi. Teori bahasa automata dapat dijadikan suatu gagasan mendasar dalam komputasi yang menjadi tools untuk mengenali suatu persoalan atau masalah karena dapat memberikan konsep dan prinsip untuk suaru permasalahan yang berkolerasi dengan bidang Ilmu Komputer.

Teori bahasa automata memiliki empat tipe grammar yang disebut dengan Hirarki Chomsky, yaitu

Unrestricted Grammar (UG)[1], Context Sensitive Grammar (CSG), Context Free Grammar (CFG),

dan Regular Grammar (RG).Tata Bahasa Bebas Konteks (CFG) dapat dinyatakan dalam berbagai bentuk, antara lain Bentuk Normal Chomsky (CNF) dan Bentuk Normal Greibach (GNF). Syarat yang harus dipenuhi untuk mendapatkan bentuk normal Greibach adalah aturan produksinya harus dalam bentuk normal Chomsky (CNF), tidak bersifat rekursif kiri, dan tidak memuat produksi yang menghasilkan  (epsilon). Bentuk normal Greibach dapat dilakukan dengan dua cara yaitu dengan substitusi dan matriks.

Aturan produksi dalam teori bahasa automata adalah proses yang menspesifikasikan bagaimana suatu tata bahasa mentransformasi suatu string ke bentuk lainnya. Aturan produksi dinyatakan dalam bentuk

α → β, α menghasilkan atau menurunkan β. α merupakan simbol ruas kiri sedangkan β merupakan

simbol ruas kanan. Simbol – simbol tersebut dapat berupa terminal dan nonterminal dimana simbol nonterminal dapat diturunkan menjadi simbol terminal. Simbol terminal disimbolkan dengan huruf kecil (a,b,c, dan sebagainya ), sedangkan simbol nonterminal disimbolkan dengan huruf besar (A,B,C, dan sebagainya).

Penulisan notasi Tata Bahasa Bebas Konteks (CFG) dapat ditulis dengan 4-tsupel : G : (N, Σ, S, P), dimana N adalah himpunan berhingga dari nonterminal, Σ adalah himpunan berhingga dari terminal, S adalah terminal spesifik yang dinamakan simbol awal, dan P adalah himpunan dari produksi-produksi[2]. Penulisan Tata Bahasa Bebas Konteks (CFG) didasarkan pada ketentuan sebagai berikut : Simbol nonterminal ditulis dengan huruf A sampai dengan Z, kecuali S, Sdigunakan sebagai simbol awal, dan huruf a sampai dengan z, huruf Yunani α sampai ζ, dan bilangan (digit) adalah simbol

▸ Baca selengkapnya: bentuk dada normal disebut

(2)

2

Metode

Tahapan pada penelitian ini adalah tahapan pembentukan bentuk normal Greibach dengan metode substitusi, metode pengembangan sistem prototype, dan aplikasi bentuk normal Greibach dengan metode substitusi.

Gambar 1. Tahapan Metode Penelitian

Proses pembentukan bentuk normal Greibach dengan metode substitusi ini dilakukan pada tahap awal penelitian. Tahap penelitian ini dilakukan untuk merancang algoritma yang sesuai untuk membuat aplikasi pengubah bentuk normal Chomsky menjadi bentuk normal Greibach dengan metode subtitusi. Algoritma aplikasi ini disampaikan melalui sebuah flowchart. Flowchart ini menggambarkan bagaimana masukan aturan produksi awal hingga proses – proses yang terjadi didalamnya hingga mendapatkan hasil. Flowchart ini diperlukan untuk mendapat gambaran dalam pengerjaan tahap selanjutnya dalam pengerjaan aplikasi ini. Flowchart pengubah bentuk normal Chomsky menjadi bentuk normal Greibach dengan metode subtitusi dapat dilihat pada Gambar 4 berikut ini.

Gambar 2. Flowchart Pembentukan GNF dengan Substitusi

Metode prototype merupakan tahap yang dilakukan selanjutnya setelah mendapatkan bentuk

flowchart pembentukan aplikasi ini. Flowchart yang telah didapat dijadikan referensi dalam

pengerjaan tahap selanjutnya. Tahap ini menjelaskan tahapan secara rinci metode yang dilakukan dalam pembuatan aplikasi ini. Tahap prototype ini memiliki 6 tahapan utama seperti berikut [3] :

(3)

Gambar 3. Tahapan metode prototype

2.1

Identifikasi Alternatif Prototype

Tahap identifikasi alternatif prototype ini merupakan tahap awal dilakukannya penelitian. Pengumpulan data yang dilakukan berupa identifikasi seluruh kebutuhan pelanggan, serta mencari data – data yang mendukung aplikasi ini. Data – data tersebut didapatkan dari buku – buku atau jurnal - jurnal yang terkait dengan aplikasi. Identifikasi alternatif prototype ini yang diutamakan adalah proses input dan output aplikasi.

2.2

Rancang Bangun Prototype

Tahap rancang bangun prototype ini dilakukan setelah tahap identifikasi alternatif prototype selesai. Tahap ini dilakukan agar mendapatkan bentuk – bentuk prototype yang dapat dievaluasi sebelum diterapkan. Tahap rancang bangun prototype ini memiliki 3 tahapan prototype yang dilakukan untuk membuat perangkat lunak tersebut.

(4)

Tabel 1. Tahap Desain Prototype

Prototype Fungsi yang diinginkan

1 Fungsi yang diinginkankan prototype1: 1. Fungsi untuk membuat field untuk masukan produksi.

2. Fungsi untuk mengecek apakah masukan produksi memenuhi syarat yang sudah ditetuntukan atau belum, dalam hal ini harus dalam bentuk normal Chomsky.

2 Fungsi yang diinginkan prototype 2: 1. Fungsi untuk menentukan urutan variabel produksi.

2. Fungsi untuk melakukan subtitusi bermasalah.

3. Fungsi untuk menemukan jika terdapat bentuktidak rekursif kiri.

4. Fungsi untuk melakukan subtitusi mundur. 5. Fungsi untuk menampilkan langkah – langkah

proses pengerjaan apabila tidak terdapat bentuk rekursif kiri.

6. Fungsi untuk menamplikan semua hasil bentuk normal Greibach yang telah didapat. 3 Fungsi yang diinginkan prototype 3: 1. Fungsi untuk menemukan jika terdapat

bentuk rekurif kiri.

2. Fungsi untuk mengubah bentuk rekursif kiri menjadi bentuk normal Greibach.

3. Fungsi untuk melakukan substitusi mundur. 4. Fungsi untuk menampilkan langkah – langkah

proses perngerjaan apabila terdapat bentuk rekursif kiri.

5. Fungsi untuk menamplikan semua hasil bentuk normal Greibach yang telah didapat.

2.3

Evaluasi Prototype

Evaluasi sistem ini dilakukan secara langsung kepada pihak pengguna, sehingga jika masih terdapat kekurangan dapat langsung diperbaiki. Kekurangan atau ketidaksesuaian prototype pada aplikasi ini diperbaiki pada pembangunan prototype selanjutnya. Tahap ini diperlukan untuk memastikan apakah aplikasi berjalan dengan baik, serta mengindentifikasi kesalahan, sehingga dapat langsung dilakukan perbaikan hingga aplikasi dapat digunakan.

2.4

Kode Program

Kode sistem dilakukan jika tahap evaluasi prototype telah selesai. Tahap ini prototype yang sudah ditentukan, diterjemahkan ke dalam bahasa pemograman yang sesuai untuk menyatukannya menjadi aplikasi yang komplit. Aplikasi ini menggunakan bahasa pemograman PHP (Hypertext Preprocessor) untuk membuat aplikasinya.

(5)

Sistem yang telah selesai pada tahap kode sistem, kemudian dilakukan pengujian. Pengujian dilakukan secara langsung kepada pelanggan untuk mengetahui apakah kebutuhan sudah sesuai dengan kebutuhan pelanggan atau belum. Pengujian sistem menggunaka black box testing. Pengujian

black box testing berfokus pada output yang didapat dari berbagai jenis input. Pengujian sistem ini

meliputi pengujian terhadap prototype dan fungsional yang telah dibuat oleh pengembang dan disetujui oleh pelanggan.

2.6

Transformasi Sistem

Transformasi sistem merupakan tahap terakhir pada metode prototype. Prototype selanjutnya diubah menjadi perangkat lunak yang dapat beroperasi penuh. Aktivitas ini dilakukan dengan menghilangkan kode – kode yang tidak dibutuhkan, penambahan program – program baru yang diinginkan dan perbaikan serta pengujian perangkat lunak secara berulang. Tahap akhir dari transformasi sistem ini adalah aplikasi yang telah diuji dan dapat diterima oleh pengguna siap digunakan.

3

Implementasi dan Hasil

Implementasi dan hasil dari aplikasi pengubah bentuk normal Chomsky menjadi bentuk normal

Greibach dengan metode substitusi dapat dinyatakan sebagai berikut :

3.1

Antarmuka pengenalan

Antarmuka pengenalan merupakan halaman awal dari aplikasi ini. Antarmuka ini menampilkan informasi tentang bentuk normal Greibach dan bentuk normal Chomsky. Pengguna yang belum mengetahui tentang bentuk normal Greibach dan bentuk normal Chomsky diharapkan dengan adanya informasi ini jadi mengetahui bagaimana bentuk normal Greibach dan bentuk normal Chomsky. Antarmuka Pengenalan dapat dilihat ada Gambar 4 berikut ini.

Gambar 4. Antarmuka Pengenalan CNF dan GNF

Tahap identifikasi alternatif prototype ini merupakan tahap awal dilakukannya penelitian. Pada tahap ini, pengembang melakukan analisis kebutuhan user terhadap sistem yang akan dibuat. Pengembang melakukan interview mengenai kebutuhan sistem yang diinginkan oleh user. Kemudian pengembang mencacat fungsi apa saja yang diperlukan oleh sistem. Pada identifikasi alternatif ini, yang diutamakan adalah proses input dan output sistem.

3.2

Antarmuka GNF

Antarmuka GNF merupakan halaman inti dari aplikasi ini. Antarmuka ini akan menampilkan field untuk jumlah aturan produksi yang ingin dimasukkan oleh pengguna, menampilkan kotak pesan apabila aturan produksi yang dimasukkan masih salah, menampilkan langkah – langkah proses yang dilakukan aplikasi dan seluruh hasil bentuk normal Greibach yang didapat.

(6)

Field Aturan Produksi

Antarmuka ini menampilkan jumlah field aturan produksi sesuai yang diinginkan oleh pengguna. Antarmuka untuk menampilkan field aturan produksi dapat dilihat pada Gambar 5 berikut ini.

Gambar 5. Antarmuka menampilkan filed aturan produksi

Antarmuka Kotak Pesan Peringatan

Field yang sebelumnya telah ditentukan berapa banyak aturan produski yang diinginkan pengguna,

kemudian diisi aturan produksinya. Semua field harus diisi pada antarmuka ini, karena apabila ada salah satu field yang masih kosong program tidak akan dapat berjalan. Field yang telah diisi semua dan apabila terdapat aturan produksi yang tidak dalam bentuk normal Chomsky maka akan diberi peringatan sebuah kotak pesan. Aplikasi juga menampilkan bagian field yang masih salah dan belum dalam bentuk normal Chomsky dengan field yang bermasalah diberi warna merah. Antarmuka kotak pesan peringatan apabila aturan produksi yang dimasukkan masih salah dapat dilihat pada Gambar 6 berikut ini.

Gambar 6. Antarmuka kotak pesan peringatan

Antarmuka menampilkan langkah – langkah dan hasil bentuk GNF

Antarmuka ini menampilkan proses penyederhanaan dan hasil bentuk normal Greibach yang dilakukan oleh aplikasi. Antarmuka ini juga menampilkan aturan produksi yg dimasukkan oleh pengguna untuk mengingatkan kembali pengguna soal aturan produksi yang telah dimasukkan. Antarmuka menampilkan proses dan hasil dari bentuk normal Greibach dapat dilihat pada Gambar 7 berikut ini.

(7)

Gambar 7. Antarmuka menampilkan langkah dan hasil GNF

3.3

Pengujian

Pada tahap ini dilakukan pengujian terhadap aplikasi yang telah dikembangkan. Pengujian ini bertujuan mencari kesalahan – kesalahan pada aplikasi. Aplikasi harus benar – benar sesuai dengan kebutuhan pelanggan.

Tabel 2. Hasil Pengujian Fungsional

No Kebutuhan Fungsional Hasil

1. Aplikasi dapat mengecek apakah aturan produksi yang dimasukkan sesuai aturan dengan syarat yang sudah ditentukan atau belum, dalam hal ini harus sudah dalam bentuk normal Chomsky.

Baik

2. Aplikasi dapat menampilkan informasi berupa bentuk normal Greibach dan bentuk normal Chomsky.

Baik

3. Aplikasi dapat menampilkan seluruh proses yang terjadi dari aturan produksi bentuk normal Chomsky hingga akhirnya menjadi bentuk normal Greibach.

Baik

4. Aplikasi dapat menampilkan seluruh hasil bentuk normal Greibach yang telah didapat.

Baik

4. Kesimpulan

Kesimpulan dari penelitian ini adalah bentuk normal Greibach dengan metode substitusi hanya bisa didapat apabila masukan produksi yang dimasukkan sudah dalam bentuk normal Chomsky dan dalam pengerjaan mencari bentuk normal Greibach dengan metode substitusi masih memiliki kekurangan dalam proses pengerjaannya.

1. Aplikasi bentuk normal Greibach ini dapat ditambahkan metode matriks, sehingga aplikasi memiliki dua metode dalam pengerjaanya.

2. Aplikasi dapat dikembangkan dengan menampilkan peringatan kalau aturan produksi tidak dapat dikerjakan, dalam hal ini soal bentuk normal Chomsky yang rekursif tetapi tidak memiliki turunan fungsi produksi.

(8)

6. Referensi

[1]Chomsky, Noam. 1959. On Certain Formal Properties Of Grammar. MIT:New Jersey.

[2]Merliana, Melly. 2014. Perangkat Lunak untuk Pembelajaran Penyederhanaan Tata Bahasa Bebas

Konteks dan Pengubahan kedalam Bentuk Normal Greibach dengan Metode Substitusi.

UNIKOM:Bandung.

[3] Mulyanto, Agus. 2008. Sistem Informasi Konsep dan Aplikasi. Pustaka Belajar: Yogyakarta.

Gambar

Gambar 1. Tahapan Metode Penelitian
Gambar 4. Antarmuka Pengenalan CNF dan GNF
Gambar 6. Antarmuka kotak pesan peringatan  Antarmuka menampilkan langkah – langkah dan hasil bentuk GNF
Gambar 7. Antarmuka menampilkan langkah dan hasil GNF  3.3  Pengujian

Referensi

Dokumen terkait

Setelah menelusuri jurnal yang mambahas tentang mesin pemotong untuk memisahkan ring gelas plastik dari tabungnya tidak ada maka dengan mengacu jurnal lainnya seperti

Excel dan membutuhkan waktu berhari- hari, bahkan berminggu-minggu, sedangkan dalam membuat jadwal harus dilakukan dengan optimal dan cepat dikarenakan jadwal akan

Hasil perhitungan statistika antara kelompok P2 dengan kelompok P3 menunjukkan perbedaan yang tidak signifikan (p>0,05) dengan peningkatan jumlah spermatozoa sebesar 21%,

Banyaknya kutipan unsur yang dibahas Mahasiswa mampu menjelaskan pendekatan terhadap kajian/analisis karya sastra 4% 6 Sikap Mahasiswa mampu: S6: Menghargai

56 Direksi atau kantor pusat memberikan keputusan permohona fasilitas kredit yang dilakukan oleh bagian kredit atau kantor cabang setelah mengadakan

Untuk bangunan Perusahaan / Perusahaan Industri yang mengalami perubahan peruntukan tanpa balik nama dikenakan biaya 20% (dua puluh persen) dari tarip retribusi.

Acl menggunakan format tanggal yang Anda tentukan dalam input file definition untuk mengakses data dalam file dan menampilkan tanggal tersebut.. Anda dapat memilih atau

ANOVA menunjukan bahwa fotoperiode berpengaruh nyata terhadap pertumbuhan berat dan panjang, namun tidak berpengaruh nyata terhadap sintasan (survival rate) Hasil