Teori Bahasa dan Automata. Finite State Automata & Non Finite State Automata

dokumen-dokumen yang mirip
TEORI BAHASA DAN AUTOMATA

Reduksi DFA [Deterministic Finite Automata]

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

TEORI BAHASA DAN AUTOMATA

FINITE STATE MACHINE / AUTOMATA

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

PERTEMUAN 9 TEORI BAHASA DAN OTOMATA [TBO]

FINITE STATE AUTOMATA

TUGAS MAKALAH TEORI BAHASA & AUTOMATA

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

TEORI BAHASA DAN AUTOMATA

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

TEORI BAHASA DAN AUTOMATA

Non-deterministic Finite Automata Dengan -Move

TEORI BAHASA DAN OTOMATA [TBO]

TEORI BAHASA DAN OTOMATA

TEORI BAHASA DAN OTOMATA [TBO]

Lecture Notes Teori Bahasa dan Automata

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

Teori Bahasa dan Otomata 1

TEORI BAHASA DAN AUTOMATA

Teori Bahasa Formal dan Automata

Minimum DFA. CSG3D3 Teori Komputasi

RENCANA PROGRAM KEGIATAN PERKULIAHAN SEMESTER (RPKPS)

Deterministic Finite Automata

Contents.

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

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

BAHASA REGULER 1. Ekspresi Regular

MODUL 4: Nondeterministic Finite Automata

SILABUS MATAKULIAH. Indikator Pokok Bahasan/Materi Aktifitas Pembelajaran

Teori Bahasa Formal dan Automata

TEKNIK KOMPILASI Bahasa Regular

Non-Deterministic Finite Automata

MODUL 3: Finite Automata

TEORI BAHASA DAN AUTOMATA

TEORI BAHASA DAN OTOMATA [TBO]

TEORI BAHASA DAN OTOMATA PENGANTAR

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

TEORI BAHASA DAN AUTOMATA

BAB I PENDAHULUAN 1-1

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

1. Pendahuluan. 2. Tinjauan Pustaka

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

TEORI BAHASA DAN OTOMATA

TEORI BAHASA & AUTOMATA

MODUL 5: Nondeterministic Finite Automata dengan

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

Teori Bahasa dan Otomata

Tata Bahasa Kelas Tata Bahasa. Konsep Bahasa (1)

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

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

BAB II LANDASAN TEORI

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

EKSPRESI REGULAR PADA SUATU DETERMINISTIC FINITE STATE AUTOMATA

Komponen sebuah Kompilator

BAB III AUTOMATA HINGGA NON-DETERMINISTIK DAN EKUIVALENSI AHN AHD - GR

MODUL 7: MINIMISASI FA

Simulasi Visual Penerapan Metode Breadth First Search (BFS) Pada Penyelesaian Masalah State dan Space (Sampel kasus: Farmer s Problem)

Teori Bahasa Formal dan Automata

TEKNIK KOMPILASI Konsep & Notasi Bahasa

BAB II LANDASAN TEORI

BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah Von Neumann

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

DIKTAT TEORI BAHASA DAN OTOMATA

PENYEDERHANAAN Context Free Grammar

PENDAHULUAN. Terdapat tiga topik utama di teori otomata yaitu:

MODUL TEORI BAHASA DAN AUTOMATA

Operasi FA dan Regular Expression

Pendahuluan. Push Down Atomata. Perbedaan FA dan PDA [7] 4/25/2012 IF-UTAMA 1. Grammar-machine equivalence [3] Latar belakang munculnya konsep PDA

INTELLIGENT DECISION SUPPORT SYSTEM DALAM MENDETEKSI BEHAVIOUR SIRKUIT LOGIKA

IF-UTAMA 1. Definisi. Grammar. Definisi

Tanggal Revisi : Tanggal : SATUAN ACARA PERKULIAHAN

TEORI BAHASA DAN OTOMATA [TBO]

Penerapan Graf Transisi dalam Mendefinisikan Bahasa Formal

FTIK / PRODI TEKNIK INFORMATIKA

SATUAN ACARA PERKULIAHAN MATA KULIAH : TEORI BAHASA DAN AUTOMATA (TBA) KODE / SKS : KK / 3 SKS

1, 2, 3

BAB V CONTEXT FREE GRAMMAR DAN PUSH DOWN AUTOMATA

Grammar dan Tingkat Bahasa

MODUL 6: TEOREMA KLEENE

Disusun oleh: Rina Dewi Indah Sari, S.Kom

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

Sumarni Adi TEKNIK INFORMATIKA STMIK AMIKOM YOGYAKARTA 2013

BAB I TEORI BAHASA DAN AUTOMATA

Teori Bahasa & Otomata

Tujuan perancangan bhs program

8 April 2015 Teori Bahasa dan Otomata

Amir Hamzah AKPRIND PRESS 2009

MODUL 11: PUSHDOWN AUTOMATON

PENDAHULUAN Teori Bahasa

PEMBUATAN MEDIA PEMBELAJARAN UNTUK PROSES KONVERSI PADA FINATE AUTOMATA BERBASIS MULTIMEDIA

TEORI BAHASA DAN OTOMATA [TBO]

PENDEKATAN TEORI AUTOMATA UNTUK MENYELESAIKAN APLIKASI-APLIKASI DI BIDANG ILMU KECERDASAN BUATAN

BAB II MODEL KOMPUTASI FINITE STATE MACHINE. Pada Bab II akan dibahas teori dasar matematika yang digunakan

BAB 3 ANALISIS DAN PERANCANGAN

Pengenalan Konsep Bahasa dan

anggota alfabet dinamakan simbol terminal atau token.

Overview. Pendahuluan. Pendahuluan. Pendahuluan. Pendahuluan. Pendahuluan

ABSTRAK. Universitas Kristen Maranatha

Transkripsi:

Teori Bahasa dan Automata Finite State Automata & Non Finite State Automata

Finite State Automata Model matematika suatu sistem yang menerima input dan output diskrit Mesin automata dari bahasa Regular Tidak memiliki tempat penyimpanan sehingga kemampuan mengingat terbatas (contoh: elevator/lift) Aplikatif - berguna untuk merancang sistem nyata. Aplikasi meliputi : analisis leksikal, text-editor, protokol komunikasi jaringan (kermit) dan parity checker (pengecek parity). 2

Finite State Automata FSA atau AH (Automata Hingga) didefinisikan sebagai pasangan 5 tupel M = (Q,, δ, S, F). Q : himpunan hingga state : himpunan hingga simbol input (alfabet) δ : fungsi transisi, menggambarkan transisi state FSA akibat pembacaan simbol input. Fungsi transisi ini biasanya diberikan dalam bentuk tabel. S Q : state AWAL F Q : himpunan state AKHIR 3

Finite State Automata Contoh : seorang petani dengan seekor serigala, kambing dan seikat rumput berada pada suatu sisi sungai. Tersedia hanya sebuah perahu kecil yang hanya dapat dimuati dengan petani tersebut dengan salah satu serigala, kambing atau rumput. Petani tersebut harus menyeberangkan ketiga bawaannya kesisi lain sungai. Tetapi jika petani meninggalkan serigala dan kambing pada suatu saat, maka kambing akan dimakan serigala. Begitu pula jika kambing ditinggalkan dengan rumput, maka rumput akan dimakan oleh kambing. Mungkinkah ditemukan suatu cara untuk melintasi sungai tanpa menyebabkan kambing atau rumput dimakan. 4

16 kemungkinan kombinasi state Sisi kiri Sisi Kanan Simbol State PSKR Ø PSKR Ø SR PK SR PK SK PR SK PR KR PS KR PS PSR K PSR K PSK R PSK R PKR S PKR S PK SR PK SR PR SK PR SK PS KR PS KR K PSR K PSR R PSK R PSK S PKR S PKR SKR P SKR P P SKR P SKR Ø PSKR Ø PSKR Sisi kiri Sisi Kanan Simbol State PSKR Ø PSKR Ø SR PK SR PK PSR K PSR K PSK R PSK R PKR S PKR S PK SR PK SR K PSR K PSR R PSK R PSK S PKR S PKR Ø PSKR Ø PSKR Dari 16 kemungkinan kombinasi state, hanya 10 state yang memenuhi syarat. 7 March 2013 5 Teori Bahasa dan Automata

PK P PKSR - Ø SR - PK PSR - K PK R - PKS P PS PS PR PR S- PKR PK PK PK PK Diagram Transisi PKR - S PKS - R PR PR PS PS K - PSR P P PK - SR PK PK Ø - PKSR 6

Deterministic FSA Ada dua jenis FSA : Deterministic finite automata (DFA) Non deterministik finite automata.(nfa) DFA : transisi state FSA akibat pembacaan sebuah simbol bersifat tertentu. δ : Q Q NFA : transisi state FSA akibat pembacaan sebuah simbol bersifat tak tentu. δ : Q 2 Q 7

Deterministic Finite Automata Deterministic finite automata (DFA) M = (Q,, δ, S, F), dimana : Q : himpunan state/kedudukan : himpunan simbol input : fungsi transisi, dimana Q x Q S : State awal (initial state) F : himpunan state akhir (Final State) Language L(M) : (x (S,x) di dalam F) 8

Deterministic Finite Automata DFA : Q = {q0, q1, q2} δ diberikan dalam tabel berikut : = {a, b} δ a b S = q0 q0 q0 q1 F = {q0, q1} q1 q0 q2 L(M) = {abababaa, aaaabab,aabababa, } a q2 q2 q2 b a q0 q1 q2 b a b 9

Deterministic Finite Automata Telusurilah, apakah kalimat-kalimat berikut diterima DFA di atas : abababaa, aaaabab, aaabbaba Jawab : δ (q0,abababaa) δ (q0,bababaa) δ (q1,ababaa) δ (q0,babaa) δ (q1,abaa) δ (q0,baa) δ (q1,aa) δ (q0,a) q0 Tracing berakhir di q0 (state AKHIR) kalimat abababaa diterima Kesimpulan : Sebuah kalimat diterima oleh DFA di atas jika tracingnya berakhir di salah satu state AKHIR. 10

Non Deterministic Finite Automata Non Deterministic finite automata (NFA) M = (Q,, δ, S, F), dimana : Q : himpunan state/kedudukan : himpunan simbol input : fungsi transisi, dimana Q x ( ) P(Q) P(Q) : set of all subsets of Q S : State awal (initial state) F : himpunan state akhir (Final State) Language L(M) : (x (S,x) di dalam F) 11

01020341412423 Non Deterministic Finite Automata Berikut ini sebuah contoh NFA (Q,, δ, S, F). dimana : Q = {q 0, q1, q2,q3, q4 } δ diberikan dalam tabel berikut : = {a, b,c} δ a b c S = q0 Q 0 {q0, q 1} {q0, q2 } {q0, q3 } F = {q4} q 1 {q1, q4 } {q1 } {q 1} q 2 {q2 } {q 2, q4 } {q 2} q3 {q3 } {q3 } {q 3, q4 } q 4 12

= {a, b,c} δ a b c S = q0 q 0 {q0, q 1} {q0, q2 } {q0, q3 } F = {q4 } q 1 {q1, q4 } {q1 } {q 1} q 2 {q2 } {q 2, q4 } {q 2} q3 {q3 } {q3 } {q 3, q4 } q 4 a,b,c a,b,c q0 a q1 L(M) = {aabb, } c q3 b q2 b a q4 a,b,c a,b,c c 13

Sebuah kalimat di terima NFA jika : Salah satu tracing-nya berakhir di state AKHIR, atau himpunan state setelah membaca string tersebut mengandung state AKHIR Telusurilah, apakah kalimat-kalimat berikut diterima NFA di atas : ab, abc, aabc, aabb Jawab: δ(q0,ab) δ(q0,b) δ(q1,b) {q0, q2} {q1 } = {q0, q1, q2} Himpunan state TIDAK mengandung state AKHIR kalimat ab tidak diterima δ(q0,abc) δ(q0,bc) δ(q1,bc) { δ(q0,c) δ(q2,c)} δ(q1, c) {{ q0, q3 } { q2 }} { q1 } = {q0, q1, q2,q3 } Himpunan state TIDAK mengandung state AKHIR kalimat abc tidak diterima 14

Ekuivalensi Antar Deterministic Finite Automata Dua DFA M1 dan M2 dinyatakan ekivalen apabila L(M1) = L(M2) 0 q0 0 M1 q1 0 q0 M2 15

Reduksi Jumlah State Pada FSA Reduksi dilakukan untuk mengurangi jumlah state tanpa mengurangi kemampuan untuk menerima suatu bahasa seperti semula (efisiensi) State pada FSA dapat direduksi apabila terdapat useless state Hasil dari FSA yang direduksi merupakan ekivalensi dari FSA semula 16

Reduksi Jumlah State Pada FSA Pasangan State dapat dikelompokkan berdasarkan: Distinguishable State (dapat dibedakan) Dua state p dan q dari suatu DFA dikatakan indistinguishable apabila: δ(q,w) F dan δ(p,w) F atau δ(q,w) F dan δ(p,w) F untuk semua w S* Indistinguishable State ( tidak dapat dibedakan) Dua state p dan q dari suatu DFA dikatakan distinguishable jika ada string w S* hingga: δ(q,w) F dan δ(p,w) F 17

Reduksi Jumlah State Pada FSA - Relasi Pasangan dua buah state memiliki salah satu kemungkinan : distinguishable atau indistinguishable tetapi tidak kedua-duanya. Dalam hal ini terdapat sebuah relasi : Jika dan maka p, r p dan q indistinguishable, q dan r indistinguishable indistinguishable dan p,q,r indistinguishable Dalam melakukan eveluasi state, didefinisikan suatu relasi : Untuk Q yg merupakan himpunan semua state D adalah himpunan state-state distinguishable, dimana D Q N adalah himpunan state-state indistinguishable, dimana N Q maka x N jika x Q dan x D 18

Reduksi Jumlah State Pada FSA Step Hapuslah semua state yg tidak dapat dicapai dari state awal (useless state) Buatlah semua pasangan state (p, q) yang distinguishable, dimana p F dan q F. Catat semua pasangan-pasangan state tersebut. Cari state lain yang distinguishable dengan aturan: Untuk semua (p, q) dan semua a, hitunglah δ (p, a) = p a dan δ (q, a) = q a. Jika pasangan (p a, q a ) adalah pasangan state yang distinguishable maka pasangan (p, q) juga termasuk pasangan yang distinguishable. Semua pasangan state yang tidak termasuk sebagai state yang distinguishable merupakanstate-state indistinguishable. Beberapa state yang indistinguishable dapat digabungkan menjadi satu state. Sesuaikan transisi dari state-state gabungan tersebut. 19

Reduksi Jumlah State Pada FSA Contoh Sebuah Mesin DFA 0 q1 1 0 0 0,1 q 0 q2 1 q 4 1 0 1 0 Lakukan Reduksi state pada DFA diatas? q 3 1 q 5 20

Reduksi Jumlah State Pada FSA Step State q5 tidak dapat dicapai dari state awal dengan jalan apapun (useless state). Hapus state q5 Catat state-state distinguishable, yaitu : q4 F sedang q0, q1, q2, q3 F sehingga pasangan (q0, q4) (q1, q4) (q2, q4) dan (q3, q4) adalah distinguishable. Pasangan-pasangan state lain yang distinguishable diturunkan berdasarkan pasangan dari langkah 2, yaitu : Untuk pasangan (q0, q1) δ(q0, 0) = q1 dan δ(q1, 0) = q2 belum teridentifikasi δ(q0, 1) = q3 dan δ(q1, 1) = q4 (q3, q4) distinguishable maka (q0, q1) adalah distinguishable. Untuk pasangan (q0, q2) δ(q0, 0) = q1 dan δ(q2, 0) = q1 belum teridentifikasi δ(q0, 1) = q3 dan δ(q2, 1) = q4 (q3, q4) distinguishable maka (q0, q2) adalah distinguishable. 21

Reduksi Jumlah State Pada FSA Step Setelah diperiksa semua pasangan state maka terdapat state-state yang distinguishable : (q0,q1), (q0,q2), (q0,q3), (q0,q4), (q1,q4), (q2,q4), (q3,q4) Karena berdasarkan relasi-relasi yang ada, tidak dapat dibuktikan (q1, q2), (q1, q3) dan (q2, q3) distinguishable, sehingga disimpulkan pasangan-pasangan state tersebut indistinguishable. Karena q1 indistinguishable dengan q2, q2 indistinguishable dengan q3, maka dapat disimpulkan q1, q2, q3 saling indistinguishable dan dapat dijadikan satu state. Berdasarkan hasil diatas maka hasil dari DFA yang direduksi menjadi: 0 0, 1 0, 1 q 0 q1,2,3 q 4 1 22