BAB I PENDAHULUAN 1-1

dokumen-dokumen yang mirip
Tata Bahasa Kelas Tata Bahasa. Konsep Bahasa (1)

BAB 1 PENDAHULUAN. sederhana adalah kelas bahasa reguler (regular languages). Bahasa reguler dapat dengan

TEORI BAHASA DAN AUTOMATA

Teori Bahasa dan Otomata

Sebuah bahasa dinyatakan regular jika terdapat finite state automata yang dapat menerimanya. Bahasa-bahasa yang diterima oleh suatu finite state

TEORI BAHASA DAN AUTOMATA

TEKNIK KOMPILASI Konsep & Notasi Bahasa

TEORI BAHASA DAN OTOMATA [TBO]

Sumarni Adi TEKNIK INFORMATIKA STMIK AMIKOM YOGYAKARTA 2013

Teori Komputasi 11/2/2016. Bab 5: Otomata (Automata) Hingga. Otomata (Automata) Hingga. Otomata (Automata) Hingga

FINITE STATE MACHINE / AUTOMATA

TEORI BAHASA & OTOMATA (KONSEP & NOTASI BAHASA) PERTEMUAN IX Y A N I S U G I Y A N I

NonDeterministic Finite Automata. B.Very Christioko, S.Kom

IF-UTAMA 1. Definisi. Grammar. Definisi

SILABUS MATAKULIAH. Indikator Pokok Bahasan/Materi Aktifitas Pembelajaran

PENDAHULUAN. Terdapat tiga topik utama di teori otomata yaitu:

Penyederhanaan Tata Bahasa Bebas Konteks dalam Bentuk Normal Chomsky Menggunakan PHP

TEORI BAHASA DAN AUTOMATA

1. Pendahuluan. 2. Tinjauan Pustaka

PERTEMUAN II. Finite State Automata (FSA) Deterministic Finite Automata (DFA) Non Deterministic Finite Automata (NFA)

Grammar dan Tingkat Bahasa

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

Teori Bahasa Formal dan Automata

Finite State Machine dapat berupa suatu mesin yang tidak memiliki output. Finite State Machine yang tidak mengeluarkan output ini dikenal

RENCANA PROGRAM KEGIATAN PERKULIAHAN SEMESTER (RPKPS)

Teori Bahasa dan Otomata 1

Pendahuluan [6] FINITE STATE AUTOMATA. Hubungan RE & FSA [5] Finite State Diagram [6] 4/27/2011 IF-UTAMA 1

Teknik Kompiler 5. oleh: antonius rachmat c, s.kom, m.cs

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM. dirancang dan selanjutnya dapat diketahui gambaran dan kemampuan sistem secara

Tujuan perancangan bhs program

BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah Von Neumann

BAB I PENDAHULUAN. memiliki tata bahasa dan aturan yang lebih luas dan luwes, sehingga tidak

TEORI BAHASA DAN OTOMATA PENGANTAR

Teori Himpunan. Matematika Dasar untuk Teori Bahasa Otomata. Operasi pada Himpunan. Himpunan Tanpa Elemen. Notasi. Powerset & Cartesian Product

Teori Bahasa & Otomata

TEORI BAHASA DAN AUTOMATA

FTIK / PRODI TEKNIK INFORMATIKA

TEORI BAHASA DAN OTOMATA

BAB 1 PENDAHULUAN. 1.1 Pendahuluan. 1.2 Latar Belakang Masalah

TEKNIK KOMPILASI Bahasa Regular

Deterministic Finite Automata

Teori Bahasa & Otomata

Non-deterministic Finite Automata Dengan -Move

RENCANA PEMBELAJARAN SEMESTER

TEORI BAHASA DAN OTOMATA [TBO]

Non-Deterministic Finite Automata

Dasar Teori Bahasa & Grammar

Contents.

TEORI BAHASA & AUTOMATA

BAB II TINJAUAN PUSTAKA. konsep, fakta, termasuk simbol simbol serta aturan agar mempunyai makna.

TEORI BAHASA DAN OTOMATA [TBO]

BAB 4 IMPLEMENTASI DAN EVALUASI

FINITE STATE AUTOMATA

APLIKASI PROGRAM DINAMIS DALAM ALGORITMA COCKE- YOUNGER -KASAMI (CYK)

BAB IV HASIL DAN UJI COBA

Reduksi DFA [Deterministic Finite Automata]

Amir Hamzah AKPRIND PRESS 2009

1, 2, 3

TEORI BAHASA DAN OTOMATA [TBO]

BAB I TEORI BAHASA DAN AUTOMATA

Teori Bahasa Formal dan Automata

MODUL MATA KULIAH TEORI BAHASA DAN OTOMATA DOSEN:

TEORI BAHASA DAN OTOMATA [TBO]

PENYEDERHANAAN Context Free Grammar

UNIVERSITAS GUNADARMA

BAB I PENDAHULUAN. media penyimpanan data yang memiliki ukuran hingga ratusan gigabyte bahkan

BAB III METODE PENELITIAN. mempermudah pelaksanaan penelitian. Tahap-tahap penelitian dalam

PEMODELAN PERANGKAT LUNAK UNTUK PENGERTIAN DETERMINISTIC FINITE AUTOMATA DAN NON-DETERMINISTIC FINITE AUTOMATA

EKSPRESI REGULAR PADA SUATU DETERMINISTIC FINITE STATE AUTOMATA

Teknik Kompilasi. Notasi Bahasa

BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

BAB 3 PERANCANGAN SISTEM. Tujuan dari perancangan sistem adalah untuk memenuhi kebutuhan user mengenai

TEORI BAHASA DAN OTOMATA [TBO]

Teori Bahasa Formal dan Automata

BAB V CONTEXT FREE GRAMMAR DAN PUSH DOWN AUTOMATA

TEORI BAHASA DAN AUTOMATA

Bab 1 PENDAHULUAN Latar Belakang Masalah

Teori Bahasa Formal dan Automata

BAB IV HASIL DAN PEMBAHASAN

BAB 4 IMPLEMENTASI DAN EVALUASI. Untuk implementasi pada Oke Bakery ada spesifikasi-spesifikasi yang dibutuhkan

Bahasa adalah kumpulan kalimat. Kalimat adalah rangkaian kata. Kata adalah komponen terkecil kalimat yang tidak bisa dipisahkan lagi.

BAB II TINJAUAN PUSTAKA. Bahasa menurut kamus Websters adalah the body of words and methods of

TEORI BAHASA DAN AUTOMATA

BAB I PENDAHULUAN , hal 9. 1 Subagyo D., Asri M., Handoko H.T., Dasar-dasar Operation Research, BPFE, Yogyakarta,

Penerapan Finite State Automata Pada Proses Peminjaman Buku di Perpustakaan Universitas Kristen Satya Wacana Artikel Ilmiah

TEORI BAHASA DAN AUTOMATA

BAB IV DESKRIPSI PEKERJAAN. informasi dalam membuat Aplikasi Pemeliharaan Sarana (Pengadaan).

TUGAS MAKALAH TEORI BAHASA & AUTOMATA

Aplikasi Penyederhanaan Context Free Grammar

Lecture Notes Teori Bahasa dan Automata

DFA. Teori Bahasa dan Automata. Viska Mutiawani - Informatika FMIPA Unsyiah

Teknik Informatika PERTEMUAN 2. TEORI BAHASA & OTOMATA Imam Riadi, M.Kom Shofwatul Uyun, M.Kom. Teknik Informatika

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah 1.2 Rumusan Masalah

BAB IV IMPLEMENTASI DAN EVALUASI

BAB 4 IMPLEMENTASI DAN EVALUASI PROGRAM. dengan perangkat yang digunakan. Beberapa kriteria standar ditentukan agar sistem

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah

BAB 1 PENDAHULUAN. Hal 1. 1 Dan W. Patterson, Introduction to Artificial Intelligence and Expert System, Prentice Hall, 1990,

Teori Komputasi 11/23/2016. Bab 6: Context-Free Grammar & Parsing. Context-Free Grammar. Context-Free Grammar

BAB III ANALISIS DAN PERANCANGAN

Minimum DFA. CSG3D3 Teori Komputasi

Transkripsi:

BAB I PENDAHULUAN 1.1 Pendahuluan Ilmu komputer memiliki dua komponen utama: pertama, model dan gagasan mendasar mengenai komputasi, kedua, teknik rekayasa untuk perancangan sistem komputasi, meliputi perangkat keras dan perangkat lunak, khususnya penerapan rancangan dari teori. Teori Bahasa dan Otomata merupakan bagian pertama. Sebuah simbol adalah suatu entitas abstrak yang tidak kita definisikan secara formal. Huruf dan digit adalah contoh dari simbol yang sering dipakai. Sebuah string adalah suatu deretan berhingga dari simbol-simbol. Sebagai contoh, S, T, U adalah simbolsimbol, dan abcd adalah suatu string. Dalam tata bahasa bebas konteks (context free grammar), selanjutnya kita sebut sebagai CFG, tidak terdapat pembatasan hasil produksinya. Batasannya hanyalah ruas kiri adalah sebuah simbol variabel. Dalam tata bahasa bebas konteks linier kanan memiliki aturan dasar yaitu tata bahasa bebas konteks adalah Linier, jika setiap produksi punya maksimal satu non terminal disebelah kanan. Sedangkan tata bahasa bebas konteks adalah Linier Kanan, jika Linier dan produksi dengan non terminal di sebelah kanan berakhir dengan non terminal tersebut. Untuk mengoptimisasikan tata bahasa bebas konteks linier kanan, maka diperlukan pengecekan penginputan produksi dari tata bahasa tersebut, jika penginputan sesuai dengan aturan dari tata bahasa bebas konteks linier kanan, maka secara otomatis kita dapat menemukan Non-deterministic finite automata (NFA) atau tidak deterministik. Dikatakan tidak deterministik karena setiap satu state mempunyai dua transisi, untuk satu simbol input. Atau state yang keluar dari transisi edgenya sama. Setelah NFA maka sebelum optimisasi kita perlu melakukan Deterministic Finite Automata (DFA) atau deterministik. Dikatakan deterministik karena setiap state ada maksimal satu transisi untuk satu simbol input dan tidak punya transisi ε (epsilon). Jika DFAnya 1-1

berhasil dikerjakan maka optimisasi untuk hasil optimal. Dikatakan optimal karena jumlah state menjadi lebih sedikit dari jumlah state NFA. Oleh sebab itu, untuk melakukan optimisasi tata bahasa, dapat dilakukan dengan tiga tahap yaitu pertama, membandingkan state akhir dan bukan state akhir. Kedua, membedakan state dengan cara dua state sebelah kanan dan dua state sebelah kiri harus mempunyai transisi untuk satu simbol input yang sama. Ketiga, membedakan state yang memiliki transisi untuk simbol input dan state yang tidak memiliki transisi untuk simbol input. Jika optimisasi menghasilkan hasil yang optimal maka visualisasi gambar sama dengan DFA. 1.2 Latar Belakang Permasalahan Dalam menghasilkan tata bahasa bebas konteks linier kanan yang baru, yang lebih optimal, tentunya tidak mudah. Diperlukan pengecekan dari setiap produksi yang diinputkan atau dimasukkan. Pengecekan inputan produksi tata bahasa bebas konteks perlu untuk mengetahui apakah produksi tersebut linier kanan atau bukan linier kanan. Optimisasian tata bahasa bebas konteks linier kanan harus mengikuti aturan yang telah ditetapkan dalam automata. Tidak hanya melakukan pengecekan inputan produksi tata bahasa bebas konteks, apakah linier kanan atau bukan linier kanan, tetapi perlu dilakukan NFA, dan DFA. 1.3 Batasan Masalah Tata bahasa bebas konteks memiliki beberapa penyederhanan dan aturannya. Oleh karena itu, dalam penyusunan tugas akhir, penyusun membatasi lingkup permasalahan pada : (1). Tata bahasa bebas konteks hanya membahas tentang Optimisasi tata bahasa bebas konteks linier kanan. (2). Melakukan pengecekan tata bahasa bebas konteks, apakah linier kanan atau bukan linier kanan. Dengan membatasi : a. Huruf A-Z untuk non terminal, 1-2

b. Huruf a-z untuk terminal. c. Produksi disebelah kiri selalu dimulai dengan non terminal atau huruf besar. d. Produksi disebelah kanan hanya ada terminal atau huruf kecil dan non terminal atau huruf besar. e. Tombol keyboard / untuk melanjutkan penginputan produksi f. Tombol keyboard @ untuk ε atau epsilon g. Produksi tata bahasa S ass, T atata, R RR disebut tidak linier kanan. h. Produksi tata bahasa S as, T bbb disebut linier kanan i. Jika produksi yang diinputkan tidak linier kanan maka untuk tidak dapat melakukan visualisasi dari NFA, DFA dan optimisasi (3). Jika produksi yang diinputkan linier kanan maka secara otomatis kita dapat menemukan NFA. NFA dibatasi dengan : a. State awal b. State akhir c. Simbol input berupa transisi terminal dari produksi d. Label dalam state berupa angka e. Disimpan dalam database berupa tabel f. Visualisasi dalam gambar (4). Sesudah NFA ditampilkan, maka dilanjutkan dengan DFA. DFA dibatasi dengan : a. State awal b. State akhir c. Simbol input berupa transisi terminal dari produksi d. Label dalam state berupa huruf e. Disimpan dalam database berupa tabel f. Visualisasi dalam gambar 1-3

(5). Apabila tata bahasa bebas konteks linier kanan, ditemukan NFA, kemudian DFA maka kita mengoptimasi tata bahasa ini. Optimisasi dibatasi dengan : a. Menggunakan tabel dimana terdapat kolom dan baris. Didalam kolom dan baris terdapat huruf besar yang merupakan hasil dari state pada DFA b. Pada diagonal tabel ditulis s atau sama c. Tiga aturan pada optimisasi, yang merubah s atau sama menjadi b atau beda. d. Jika hasil optimisasi pada tabel menunjukkan bahwa tidak ada s atau sama diluar diagonal maka optimal. e. Optimal dapat dilihat pada visualisasi dalam gambar DFA. 1.4 Perumusan Masalah Berdasarkan latar belakang permasalahan dan batasan masalah maka dirumuskan permasalahan bagaimana mengoptimasikan tata bahasa bebas konteks linier kanan. 1.5 Tujuan Penyusunan Tugas Akhir Tujuan umum penyusunan tugas akhir ini adalah mengimplementasikan teori-teori yang telah diperoleh selama perkuliahan ke dalam suatu permasalahan dalam bidang Teori Bahasa dan Otomata. Adapun tujuan khusus tugas akhir ini adalah mengoptimisasi tata bahasa bebas konteks linier kanan dengan menggunakan NFA, DFA untuk menghasilkan tata bahasa bebas konteks linier kanan yang baru. 1.6 Metode Penelitian Metode atau tahap-tahap yang digunakan dalam pembuatan program dan penyusunan laporan tugas akhir ini, meliputi : (1). Studi Pustaka 1-4

Studi pustaka dilakukan dengan mencari, mengumpulkan, dan mempelajari referensi-referensi yang relevan dengan pemrograman yang menggunakan Visual Basic, sehingga dapat mengkonversi NFA ke DFA, dan mengoptimisasikan. (2). Pembuatan program Langkah-langkah yang ditempuh adalah : a. Mempelajari Inputan untuk setiap tata bahasa bebas konteks, yang disebut sebagai produksi, yang dibatasi dengan aturanaturan tertentu dalam penginputannya. b. Mempelajari pengecekan terhadap produksi tata bahasa bebas konteks linier kanan. NFA, DFA dan optimisasi linier kanan yang divisualisasikan dalam gambar, dengan aturannya masing-masing. c. Mempelajari dan menerapkan permasalahan tersebut ke dalam bahasa pemrograman dengan metode yang telah dipilih. d. Perancangan dan pembuatan program. e. Menguji dan melakukan perbaikan program. f. Menyusun laporan tugas akhir. (3). Penyusunan laporan akhir Laporan akhir disusun setelah tahap pengujian dan perbaikan program. Adapun laporan akan berisi uraian secara rinci tentang tahap-tahap penelitian. 1.7 Spesifikasi Program Spesifikasi program yang akan disusun oleh penyusun ini adalah sebagai berikut : Program optimisasi tata bahasa bebas konteks linier kanan akan dibuat dengan menggunakan bahasa pemrograman Visual Basic ver. 6.0 yang berada di bawah Sistem Operasi Windows Xp. Proses yang dilewati adalah penginputan dan pengecekan tata bahasa bebas konteks apakah linier kanan atau bukan linier kanan. Jika linier 1-5

kanan maka NFA disimpan dalam database berupa tabel, dan akan divisualisasikan dalam gambar. Setelah NFA divisualisasikan, maka DFA juga disimpan dalam database berupa tabel dan divisualisasikan dalam gambar. Setelah pengecekan, NFA dan DFA, maka dilakukan optimisasi tata bahasa bebas konteks linier kanan, yang divisualisasikan juga dalam gambar. 1.8 Sistematika Penyusunan Pada penyusunan laporan tugas akhir ini penyusun menyusun secara sistematis menjadi lima bab. Bab I merupakan bab Pendahuluan, yang membahas mengenai hal-hal pokok dalam pembuatan program dan penyusunan laporan, yaitu meliputi latar belakang masalah, batasan masalah, rumusan masalah, tujuan penyusunan tugas akhir, metode penelitian, spesifikasi program, dan keterangan tentang sistematika penyusunan tugas akhir. Pada bab II akan menguraikan tentang landasan teori yang digunakan yang digunakan meliputi referensi teori bahasa dan otomata, teori tata bahasa bebas konteks dan teori tata bahasa bebas konteks linier kanan, prinsip Finite state automata atau otomata berhingga state, prinsip DFA atau Deterministic finite automata, prinsip NFA atau Nondeterministic finite automata, dan tahapan pengubahan NFA ke DFA, dan optimisasi tata bahasa bebas konteks linier kanan. Bab III merupakan bab yang berisi tentang pemilihan sistem operasi dan bahasa pemrograman, tahap perancangan dan analisis sistem program yang akan menguraikan secara rinci mengenai pengecekan linier kanan atau bukan linier kanan, database mengenai penyimpanan pembuatan gambar NFA dan DFA, serta optimisasi dan output program. Berdasarkan perancangan program yang terdapat pada Bab III, maka Bab IV disusun sebagai implementasi program yang akan memperlihatkan desain implementasi program dan hasil program berupa form-form. 1-6

Bagian terakhir dari laporan tugas akhir ini adalah Bab V sebagai Penutup, yang akan terdiri atas kesimpulan dari hasil implementasi program optimisasi tata bahasa bebas konteks linier kanan serta saransaran bagi pengembangan program di waktu yang akan datang. 1-7