Oleh: BAGUS ADHI KUSUMA, ST

Slides:



Advertisements
Presentasi serupa
Teori Bahasa dan Automata
Advertisements

Review Materi Widodo.com
Penggabungan dan Penyambungan
Pertemuan 7 FINITE AUTOMATA DENGAN OUTPUT
Teori Bahasa dan Automata
Teori Bahasa dan Otomata 2 sks
Ekuivalensi NDFA ke DFA dan NDFA dengan E-move
Pertemuan 4 Finite Automata
Pertemuan 14 Pengantar ke Mesin Turing
Yenni Astuti Version Week-6NFA ke DFA Mengapa NFA ke DFA? NFA lebih mudah dimengerti dan didesain, dibanding DFA. Namun dalam prakteknya, DFA lebih.
Pertemuan 9 Sifat-sifat Bahasa Regular
SUATU FINITE STATE AUTOMATA
Pertemuan 11 PUSH DOWN AUTOMATA (PDA)
MODUL 9 -move Gambar 20. Mesin NFA HUBUNGAN ANTARA
-move Gambar 20. Mesin NFA HUBUNGAN ANTARA
Pertemuan 3 Konversi NFA - DFA dan Konversi ε-NFA - DFA
B. Deterministic Finite Automata(DFA) (Otomata Berhingga Deterministik) Pada DFA, dari suatu “state ada tepat satu state berikutnya untuk setiap simbol.
Session 12 Pushdown Automata
Pertemuan 4 Non Deterministic Finite Automaton (NFA)
Bab VII FINITE STATE AUTOMATA DENGAN OUTPUT.
Session 5 Finite Automata
BAB II FINITE STATE AUTOMATA.
Pertemuan 3 Finite Automata
Pertemuan 2 FINITE AUTOMATA (DFA & NFA)‏
OTOMATA HINGGA.
BAB II FINITE STATE AUTOMATA.
BAB II FINITE STATE AUTOMATA.
Teori Bahasa dan Otomata 2 sks
PUSH DOWN AUTOMATA & MESIN TURING
TEORI BAHASA DAN AUTOMATA
BAB III EKIVALENSI DFA KE NFA
NON DETERMINISTIC FINITE AUTOMATA DENGAN ε - MOVE
BAB II FINITE STATE AUTOMATA.
BAB II FINITE STATE AUTOMATA.
Pertemuan 3 FINITE AUTOMATA
Teori Bahasa dan Automata
Non Deterministic Finite Automata dengan є – Move
FINITE STATE AUTOMATA (FSA)
FINITE STATE AUTOMATA (FSA)
Teori-Bahasa-dan-Otomata
BAB II FINITE STATE AUTOMATA.
OTOMATA DAN TEORI BAHASA FORMAL
Finite State Automata: Reduksi Jumlah State
Teori Bahasa Otomata D. Sinaga, M.Kom.
FINITE STATE AUTOMATA (FSA)
Teori Bahasa dan Automata
Teori Bahasa dan Automata
By : Lisda Juliana Pangaribuan
Teori-Bahasa-dan-Otomata
Teori-Bahasa-dan-Otomata
Program Studi Teknik Informatika STMIK AMIKOM Purwokerto
Program Studi Teknik Informatika STMIK AMIKOM Purwokerto
ATURAN PRODUKSI TATA BAHASA REGULER
OTOMATA DAN TEORI BAHASA FORMAL
Teori-Bahasa-dan-Otomata
Reduksi Jumlah State pada Finite State Automata
NON DETERMINISTIC FINITE AUTOMATA DENGAN ε - MOVE
OTOMATA DAN TEORI BAHASA FORMAL
BAB II FINITE STATE AUTOMATA.
Bab VII FINITE STATE AUTOMATA DENGAN OUTPUT.
Finite State Automata ♦ model matematika yang dapat menerima input dan mengeluarkan output ♦ Memiliki state yang berhingga banyaknya dan dapat berpindah.
Otomata & Teori Bahasa ( Week 4 )
Ekuivalensi NFA KE DFA *YANI*.
Teori Bahasa dan Automata
Pertemuan4.
OTOMATA DAN TEORI BAHASA 8.
Otomata & Teori Bahasa Finite State Automata: - Non Deterministic Finite Automata dengan -move - Penggabungan dan Konkatenasi FSA.
Otomata & Teori Bahasa ( Week 4 )
Reduksi Jumlah State pada Finite State Automata
Otomata & Teori Bahasa ( Week 4 )
Transcript presentasi:

Oleh: BAGUS ADHI KUSUMA, ST TEORI BAHASA DAN OTOMATA PROGRAM STUDI TEKNIK INFORMATIKA STIMIK AMIKOM PURWOKERTO 2012/2013 FINITE STATE AUTOMATA Oleh: BAGUS ADHI KUSUMA, ST

Finite (state) Automata BAHASA FORMAL dapat dipandang sebagai entitas abstrak, yaitu sekumpulan string yang berisi simbol-simbol alphabet dapat juga dipandang sebagai entitas-entitas abstrak yang dapat dikenali atau dibangkitkan oleh mesin komputasi Mesin komputasi yang sesuai untuk kelas bahasa ini Finite (state) Automata

FINITE AUTOMATA mesin abstrak berupa sistem model matematika dengan masukan dan keluaran diskrit yang dapat mengenali bahasa paling sederhana (bahasa reguler) dan dapat diimplementasikan secara nyata.

FINITE AUTOMATA model matematika yang dapat menerima input dan mengeluarkan output Memiliki state yang berhingga banyaknya dan dapat berpindah dari satu state ke state lainnya berdasar input dan fungsi transisi Tidak memiliki tempat penyimpanan/memory, hanya bisa mengingat state terkini. Mekanisme kerja dapat diaplikasikan pada : elevator, text editor, analisa leksikal, pencek parity.

FINITE STATE AUTOMATA didefinisikan sebagai pasangan 5 tupel : (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 atau representasi lainnya.) S : state AWAL (Start) F : himpunan state AKHIR (Final)

FINITE STATE DIAGRAM Finite State Automata dapat dimodelkan dengan Finite State Diagram (FSD) dapat juga disebut State Transition Diagram. Lingkaran menyatakan state Lingkaran diberi label sesuai dengan nama state tersebut. Adapun pembagian lingkaran adalah: Lingkaran bergaris tunggal berarti state sementara Lingkaran bergaris ganda berarti state akhir

2. Anak Panah menyatakan transisi yang terjadi Label di anak panah menyatakan simbol yang membuat transisi dari 1 state ke state lain 1 anak panah diberi label start untuk menyatakan awal mula transisi dilakukan

Contoh: FSA untuk mengecek parity ganjil Q ={Genap, Ganjil}  himpunan state  ∑ ={0,1}  himpunan simbol input δ = fungsi transisi,  S = Genap Start F = {Ganjil} Final state, himpunan state AKHIR (ingat untuk himpunan harus ditulis di dalam {} )

input : 1101 diterima mesin Ganjil input : 1100 Genap ditolak mesin input : 1011 Ganjil diterima mesin input : 11011 Genap ditolak mesin

Q = {Genap, Ganjil} δ = {0,1} S = Genap F = {Ganjil} Tabel Transisi: Maka: δ (Genap,0) = Genap δ (Genap,1) = Ganjil δ (Ganjil,0) = Ganjil δ (Ganjil,1) = Genap

Jenis Finite State Automata Deterministic Finite Automata (DFA) otomata berhingga yang pasti (tetap/tertentu) dari suatu state ada tepat satu state berikutnya untuk setiap simbol masukan yang diterima Non-deterministic Finite Automata (NFA) otomata berhingga yang tidak pasti dari suatu state ada 0, 1 atau lebih state berikutnya untuk setiap simbol masukan yang diterima Untuk NFA harus dicoba semua kemungkinan yang ada sampai terdapat satu yang mencapai state akhir.

Deterministic Finite Automata (DFA) DFA dapat menuntun recognizer(pengenal) lebih cepat dibanding NDFA. Contoh : pengujian parity ganjil Contoh lain : Pengujian untuk menerima bit string dengan banyaknya 0 genap, serta banyaknya 1 genap.

Pengujian untuk menerima bit string dengan banyaknya 0 genap, serta banyaknya 1 genap. 0011 : diterima. 10010 : ditolak, karena banyaknya 0 ganjil Diagram transisi-nya: DFA nya Q = {q0 , q1 , q2 , q3 } δ = {0,1} S = q0 F = { q0}

δ ( q0,011)= δ ( q2,11) = δ ( q3,1)= q2 Fungsi Transisi 011 Ditolak 1010 δ ( q0,1010)= δ ( q1,010) = δ ( q3,10)= δ ( q2,0)= q0 Diterima

Non-deterministic Finite Automata (NFA) Perbedaan dengan DFA: fungsi transisi dapat memiliki 0 atau lebih fungsi transisi untuk setiap simbol inputan String diterima NFA bila terdapat suatu urutan transisi berdasar input, dari state awal ke state akhir. Untuk NFA harus dicoba semua kemungkinan yang ada sampai terdapat satu yang mencapai state akhir.

Contoh : G = ({q0 , q1 , q2 , q3, q4 }, {0,1}, δ , q0 , { q2 , q4}} δ = {0,1} S = q0 F = { q2, q4 }

Fungsi Transisi

Contoh : string 01001 Diterima

Distinguishable & Indistinguishable Pasangan Status Distinguishable & Indistinguishable

/ / / / δ (q,w) Є F sedangkan δ (p,w) Є F dan Dua buah state dari FSA disebut indistinguishable (tidak dapat dibedakan) apabila : δ (q,w) Є F sedangkan δ (p,w) Є F dan δ (q,w) Є F sedangkan δ (p,w) Є F untuk semua w Є ∑ * / / Dua buah state dari FSA disebut distinguishable (dapat dibedakan) bila terdapat w Є ∑* sedemikian hingga: δ (q,w) Є F sedangkan δ (p,w) Є F dan δ (q,w) Є F sedangkan δ (p,w) Є F untuk semua w Є ∑ * / /

Prosedur Menentukan Pasangan Status Indistinguishable Hapus semua state yang tak dapat dicapai dari state awal. Catat semua pasangan state (p,q) yang distinguishable, yaitu {(p,q) | p Є F q Є F} Untuk setiap pasangan (p,q) sisanya, untuk setiap a Є ∑, tentukan δ(p,a) dan δ(q,a) / Catatan : jumlah pasangan seluruhnya :

Contoh Hapus state yang tidak tercapai -> tidak ada Pasangan distinguishable (q0,q4), (q1,q4), (q2,q4), (q3,q4). Pasangan sisanya (q0,q1), (q0,q2), (q0,q3), (q1,q2) (q1,q3) (q2,q3)

Prosedur Reduksi DFA Tentukan pasangan status indistinguishable. Gabungkan setiap group indistinguishable state ke dalam satu state dengan relasi pembentukan group secara berantai : Jika p dan q indistingishable dan jika q dan r indistinguishable maka p dan r indistinguishable, dan p,q serta r indistinguishable semua berada dalam satu group. sesuaikan transisi dari dan ke state-state gabungan.

Contoh: pasangan status indistinguishable (q1,q2), (q1,q3) dan (q2,q3). q1,q2,q3 ketiganya dapat digabung dalam satu state q123 Menyesuaikan transisi, sehingga DFA menjadi

EKUIVALENSI NFA-DFA Algoritma : Buat semua state yang merupakan subset dari state semula Telusuri transisi state–state yang baru terbentuk, dari diagram transisi. Tentukan state awal : {q0} Tentukan state akhir adalah state yang elemennya mengandung state akhir. Reduksi state yang tak tercapai oleh state awal. Rename nama-nama state yang tersisa.

Ubahlah NFA berikut menjadi DFA Contoh : Ubahlah NFA berikut menjadi DFA M= {{q0,q1}, {0,1}, δ, q0,{q1}} Q = {q0 , q1} δ = {0,1} S = q0 F = { q1 } Jawab : tabel transisi

1. State yang akan dibentuk : {}, {q0} {q1},{q0,q1} 2. Telusuri state 3. State awal : {q0} 4. State akhir yang mengandung q1, yaitu {q1},{q0,q1}

Diagram transisi-nya:

Diket: M={{q0,q1 ,q2}, {0,1}, , q0,{q1}} dengan tabel transisi sbb Diket: M={{q0,q1 ,q2}, {0,1}, , q0,{q1}} dengan tabel transisi sbb. Ubahlah NFA berikut menjadi DFA  1 q0 {q1,q2} {} q1 {q0,q1} q2 {q1}