By : Lisda Juliana Pangaribuan

Slides:



Advertisements
Presentasi serupa
Teori Bahasa dan Automata
Advertisements

Review Materi Widodo.com
Teori Bahasa dan Automata
Teori Bahasa dan Otomata 2 sks
Ekuivalensi NDFA ke DFA dan NDFA dengan E-move
SUATU FINITE STATE AUTOMATA
Oleh: BAGUS ADHI KUSUMA, ST
B. Deterministic Finite Automata(DFA) (Otomata Berhingga Deterministik) Pada DFA, dari suatu “state ada tepat satu state berikutnya untuk setiap simbol.
Ekivalensi -move pada Non Deterministik FSO ke Deterministik FSO
Bab VII FINITE STATE AUTOMATA DENGAN OUTPUT.
BAB II FINITE STATE AUTOMATA.
Pertemuan 3 Finite Automata
OTOMATA HINGGA.
BAB II FINITE STATE AUTOMATA.
BAB II FINITE STATE AUTOMATA.
BAB V EKSPRESI REGULER 1. Penerapan Ekspresi Reguler
Pertemuan 3 BAHASA REGULAR
BAB V EKSPRESI REGULER 1. Penerapan Ekspresi Reguler
TEORI BAHASA DAN AUTOMATA
TEORI BAHASA DAN AUTOMATA
Teori Bahasa dan Otomata 2 sks
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
Non Deterministic Finite Automata dengan є – Move
FINITE STATE AUTOMATA (FSA)
PUSH DOWN AUTOMATA (PDA)
FINITE STATE AUTOMATA (FSA)
Teori-Bahasa-dan-Otomata
BAB II FINITE STATE AUTOMATA.
OTOMATA DAN TEORI BAHASA FORMAL
Finite State Automata: Reduksi Jumlah State
OTOMATA DAN TEORI BAHASA 8
FINITE STATE AUTOMATA (FSA)
Teori Bahasa dan Automata
Teori Bahasa dan Automata
Teori-Bahasa-dan-Otomata
Teori-Bahasa-dan-Otomata
Teori-Bahasa-dan-Otomata
OTOMATA DAN TEORI BAHASA 1
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.
OTOMATA DAN TEORI BAHASA 2
NON DETERMINISTIC FINITE AUTOMATA DENGAN ε - MOVE
Bab VII FINITE STATE AUTOMATA DENGAN OUTPUT.
GABUNGAN & KONKATENASI
Teori-Bahasa-dan-Otomata
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 )
Pertemuan 4 Non Deterministic Finite Automaton (NFA)
Erwin Hidayat (M ) UTeM || 2010
Ekuivalensi NFA KE DFA *YANI*.
OTOMATA DAN TEORI BAHASA 3
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 )
OTOMATA DAN TEORI BAHASA 8.
Transcript presentasi:

By : Lisda Juliana Pangaribuan Pertemuan II By : Lisda Juliana Pangaribuan

FINITE STATE AUTOMATA (FSA) FSA adalah : mesin otomata dari bahasa regular yang memiliki banyak state berhingga dan dapat berpindah dari suatu state ke state lain. Gambar FSA memiliki arti : Lingkaran = state/kedudukan Label pada lingkaran = nama state Busur = transisi atau pepindahan state Label pada busur = simbol input Lingkaran didahului busur tanpa label = state awal Lingkaran ganda = state akhir

FSA didefinisikan sebagai pasangan 5 tupel : (Q, ∑, δ, S, F). Q : himpunan hingga state ∑ : himpunan hingga simbol input (alfabet) 3. δ : fungsi transisi, menggambarkan transisi state FSA akibat pembacaan simbol input. Fungsi transisi ini biasanya diberikan dalam bentuk tabel. 4. S  Q : state AWAL 5. F  Q : himpunan state AKHIR

Contoh : FSA untuk mengecek parity ganjil Q ={Gnp, Gjl} ∑ = {0,1} S = Gnp, F = {Gjl} δ =tabel transisi δ 1 Gnp Gjl

Contoh kasus dengan FSA Seorang petani,seekor kambing, srigala, rumput berada di tepi sungai dan akan menyebrang dengan sebuah perahu ditepi sungai dengan syarat : dalam perahu hanya boleh 2 objek yaitu petani yang membawa perahu dan 1 objek. Tetapi petani tidak boleh meninggalkan pasangan srigala dengan kambing dan rumput dengan kambing di salah satu tepi sungai. Buatlah 5 tupel dan gambarkan diagram transisi mesin FSAnya.

Penyelesaian Q = { PKSR - ɸ,SR-PK,PSR-K,R-PKS,S-PKR,PKR-S,PKS-R,K-PSR,PK-SR, ɸ-PKSR} S=PKSR - ɸ ∑ = {p,k,s,r} F= {ɸ-PKSR} Gambar diagram transisi

kemungkinan kombinasi state Dari 16 kemungkinan kombinasi state , hanya 10 state yang memenuhi syarat.

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

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

DETERMINISTIC FINITRE AUTOMATA DFA : transisi state FSA akibat pembacaan sebuah simbol bersifat tertentu( suatu state ada tepat pada satu state berikutnya untuk setiap symbol input yang diterima. )  M = (Q, ∑, δ, S, F), δ : Q  ∑ Q contoh :Q = {q0, q1, q2} δ diberikan dalam tabel berikut :

a b a,b ∑ = [a,b] a b S =q0 F={q0,q1} Language  L(M) : (x| ∂(S,x) di dalam F)  Kalimat yang diterima oleh DFA : a, b, aa, ab, ba, aba, bab, abab, baba Kalimat yang dittolak oleh DFA : bb, abb, abba DFA ini menerima semua kalimat yang tersusun dari simbol a dan b yang tidak mengandung substring bb. δ a b q0 q1 q2 q0 q1 q2

Telusurilah, apakah kalimat-kalimat berikut diterima DFA di atas :  abababaa  diterima aaaabab  diterima aaabbaba  ditolak 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

Tracing berakhir di q1 (state AKHIR)  kalimat aaaababa diterima δ (q0, aaaabab) δ (q0,aaabab) δ (q0,aabab) δ (q0,abab)  δ (q0,bab)  δ (q1,ab)  δ (q0,b)  q1 Tracing berakhir di q1 (state AKHIR)  kalimat aaaababa diterima  δ (q0, aaabbaba)  δ (q0, aabbaba)  δ (q0, abbaba)  δ (q0, bbaba)  δ (q1,baba)  δ (q2,aba)  δ (q2,ba)  δ (q2,a) q2 Tracing berakhir di q2 (bukan state AKHIR)  kalimat aaabbaba ditolak  Kesimpulan : sebuah kalimat diterima oleh DFA di atas jika tracingnya berakhir di salah satu state AKHIR.

Non deterministic Finite Automata Yaitu : transisi state FSA akibat pembacaan sebuah simbol bersifat tak tentu ( dari suatu state boleh terdapat 0,1 atau lebih busur keluar ( transisi ) berlabel symbol input yang sama.  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)   δ : Q  ∑  2Q Language  L(M) : (x| ∂(S,x) di dalam F)

contoh NFA (Q, ∑, δ, S, F). dimana : Q = {q0 , q1 , q2 ,q3 , q4} δ diberikan dalam tabel berikut : ∑= {a, b,c} S = q0 F = {q4} δ a b c q 0 {q0 , q 1} {q0 , q2 } {q0 , q3 } q 1 {q1 , q4 } {q1 } {q 1} q 2 {q2 } {q 2, q4 } {q 2} q3 {q3 } {q 3, q4 } q 4 

L(M) = {aabb,…} a,b,c a,b,c a q0 q1 q1 b a c b q3 q2 q4 a,b,c a,b,c c

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

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

Reduksi Jumlah State pada FSA Tujuannya : mengurangi jumlah state dari FSA dengan tidak mengurangi kemampuan semula untuk menerima suatu bahasa. State pada FSA dapat direduksi apabila terdapat useless state Hasil dari FSA yang direduksi merupakan ekivalensi dari FSA semula

Pasangan State dapat dikelompokkan berdasarkan: Distinguishable State (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

Indistinguishable State ( tidak 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*

Langkah2 mereduksi jumlah state : 1 Langkah2 mereduksi jumlah state : 1. Hapuslah semua state yg tidak dapat dicapai dari state awal (useless state) 2. Buatlah semua pasangan state (p, q) yang distinguishable, dimana p  F dan q F. Catat semua pasangan-pasangan state tersebut.

3. Cari state lain yang distinguishable dengan aturan: “Untuk semua (p, q) dan semua a  ∑, hitunglah δ (p, a) = pa dan δ (q, a) = qa . Jika pasangan (pa, qa) adalah pasangan state yang distinguishable maka pasangan (p, q) juga termasuk pasangan yang distinguishable. 4. Semua pasangan state yang tidak termasuk sebagai state yang distinguishable merupakanstate-state indistinguishable. 5. Beberapa state yang indistinguishable dapat digabungkan menjadi satu state. 6. Sesuaikan transisi dari state-state gabungan tersebut.

Contoh q2 q0 q1 1 q4 0,1 q3 q5 Sebuah Mesin DFA q4 0,1 q3 q5 Sebuah Mesin DFA Lakukan Reduksi state pada DFA diatas?

Langkah-langkah reduksi : 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

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: q1,2,3 q0 q4 0 , 1 1